hgs-twilio-class-lib 1.1.77 → 1.1.79

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 CHANGED
@@ -1,5 +1,5 @@
1
- # Flex V2 Backend Code
2
-
3
- Package to manage Flex V2 Backend.
4
-
5
- Run "npm install hgs-twilio-class-lib --save"
1
+ # Flex V2 Backend Code
2
+
3
+ Package to manage Flex V2 Backend.
4
+
5
+ Run "npm install hgs-twilio-class-lib --save"
@@ -1,13 +1,15 @@
1
+ import { SyncServiceFactory } from "../twilio/impl/sync/SyncServiceFactory";
1
2
  import { SearchParameterType } from "../common/type/SearchParameterType";
2
- import { IntervalSummaryModel } from "../models/impl/IntervalSummaryModel";
3
+ import { RealtimeDashboardSummaryModel } from "../models/impl/RealtimeDashboardSummaryModel";
3
4
  export declare class RealTimeDashboardController {
4
5
  private _dbFactory;
5
- constructor();
6
+ constructor(dbFactory: SyncServiceFactory);
6
7
  private getDatabaseConnection;
7
8
  private getItemTransaction;
8
9
  private getsyncTransaction;
9
10
  addMap(reqBody: {
10
11
  syncMapName: string;
12
+ Id: string;
11
13
  }): Promise<any>;
12
14
  getAllMaps(query: SearchParameterType & {
13
15
  syncServiceName: string;
@@ -20,9 +22,9 @@ export declare class RealTimeDashboardController {
20
22
  }): Promise<any>;
21
23
  addItem(reqBody: {
22
24
  syncMapName: string;
23
- data: IntervalSummaryModel;
25
+ data: RealtimeDashboardSummaryModel;
24
26
  }): Promise<any>;
25
- getItem(query: Pick<IntervalSummaryModel, "id"> & {
27
+ getItem(query: Pick<RealtimeDashboardSummaryModel, "id"> & {
26
28
  syncMapName: string;
27
29
  }): Promise<any>;
28
30
  getAllItems(query: SearchParameterType & {
@@ -30,9 +32,9 @@ export declare class RealTimeDashboardController {
30
32
  }): Promise<any>;
31
33
  editItem(reqBody: {
32
34
  syncMapName: string;
33
- data: IntervalSummaryModel;
35
+ data: RealtimeDashboardSummaryModel;
34
36
  }): Promise<any>;
35
- deleteItem(query: Pick<IntervalSummaryModel, "id"> & {
37
+ deleteItem(query: Pick<RealtimeDashboardSummaryModel, "id"> & {
36
38
  syncMapName: string;
37
39
  }): Promise<any>;
38
40
  routeHandler(req: any, res: any): Promise<any>;
@@ -10,19 +10,11 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.RealTimeDashboardController = void 0;
13
- const DatabaseFactoryCollection_1 = require("./DatabaseFactoryCollection");
14
- const TwilioAuthTokenConfig_1 = require("../twilio/impl/TwilioAuthTokenConfig");
15
- const TwilioClient_1 = require("../twilio/impl/TwilioClient");
16
- const SyncServiceFactory_1 = require("../twilio/impl/sync/SyncServiceFactory");
17
- const TwilioConfig_1 = require("../config/TwilioConfig");
18
13
  const DatabaseConfig_1 = require("../config/DatabaseConfig");
19
- const IntervalSummaryModel_1 = require("../models/impl/IntervalSummaryModel");
14
+ const RealtimeDashboardSummaryModel_1 = require("../models/impl/RealtimeDashboardSummaryModel");
20
15
  class RealTimeDashboardController {
21
- constructor() {
22
- let twilConfig = new TwilioAuthTokenConfig_1.TwilioAuthTokenConfig(TwilioConfig_1.TwilioConfig.accountSid, TwilioConfig_1.TwilioConfig.authToken);
23
- let twilioClient = new TwilioClient_1.TwilioClient(twilConfig);
24
- this._dbFactory = new SyncServiceFactory_1.SyncServiceFactory(twilioClient);
25
- DatabaseFactoryCollection_1.DatabaseFactoryCollection.setdatabaseFactoryCollection("Twilio", this._dbFactory);
16
+ constructor(dbFactory) {
17
+ this._dbFactory = dbFactory;
26
18
  }
27
19
  getDatabaseConnection() {
28
20
  return __awaiter(this, void 0, void 0, function* () {
@@ -47,18 +39,13 @@ class RealTimeDashboardController {
47
39
  addMap(reqBody) {
48
40
  return __awaiter(this, void 0, void 0, function* () {
49
41
  try {
50
- const { syncMapName } = reqBody;
51
- console.log("uniquename::", syncMapName);
42
+ const { syncMapName, Id } = reqBody;
52
43
  if (!syncMapName) {
53
44
  throw new Error("uniqueName is required.");
54
45
  }
55
46
  const dbTransaction = yield this.getsyncTransaction(syncMapName);
56
- console.log("dbTransaction:::", dbTransaction);
57
- // Dynamic table name from request
58
- // const tableName = databaseConfig.tables[syncMapName];
59
47
  const table = dbTransaction.objectStore(syncMapName);
60
- console.log("table check:::", table);
61
- return table.add(syncMapName, 48 * 60 * 60);
48
+ return table.add(syncMapName, Id, 48 * 60 * 60);
62
49
  }
63
50
  catch (error) {
64
51
  console.error("Error adding real-time dashboard Map:", error);
@@ -135,7 +122,7 @@ class RealTimeDashboardController {
135
122
  if (!syncMapName) {
136
123
  throw new Error("syncMapName is required.");
137
124
  }
138
- const queuedetails = new IntervalSummaryModel_1.IntervalSummaryModel(data.id, data.uniqueName, data.periodNumber, data.intOffr, data.intAns, data.intAbn, data.slaTarget, data.totalServiceLevel, data.sumTalkTime, data.sumHoldTime, data.sumWaitTime, data.longestWaitTime, data.longestHoldTime, data.longestTalkTime, data.longestInboundACDIntereaction, data.longestOutboundACDIntereaction, data.createdAt, data.updatedAt, data.eventId);
125
+ const queuedetails = new RealtimeDashboardSummaryModel_1.RealtimeDashboardSummaryModel(data.id, data.uniqueName, data.periodNumber, data.intOffr, data.intAns, data.intAbn, data.slaTarget, data.totalServiceLevel, data.sumTalkTime, data.sumHoldTime, data.sumWaitTime, data.longestWaitTime, data.longestHoldTime, data.longestTalkTime, data.longestInboundACDIntereaction, data.longestOutboundACDIntereaction, data.createdAt, data.updatedAt, data.eventId);
139
126
  if (queuedetails.validationMessages.length > 0) {
140
127
  throw queuedetails.validationMessages;
141
128
  }
@@ -200,7 +187,7 @@ class RealTimeDashboardController {
200
187
  if (!syncMapName) {
201
188
  throw new Error("syncMapName is required.");
202
189
  }
203
- const queuedetails = new IntervalSummaryModel_1.IntervalSummaryModel(data.id, data.uniqueName, data.periodNumber, data.intOffr, data.intAns, data.intAbn, data.slaTarget, data.totalServiceLevel, data.sumTalkTime, data.sumHoldTime, data.sumWaitTime, data.longestWaitTime, data.longestHoldTime, data.longestTalkTime, data.longestInboundACDIntereaction, data.longestOutboundACDIntereaction, data.createdAt, data.updatedAt, data.eventId);
190
+ const queuedetails = new RealtimeDashboardSummaryModel_1.RealtimeDashboardSummaryModel(data.id, data.uniqueName, data.periodNumber, data.intOffr, data.intAns, data.intAbn, data.slaTarget, data.totalServiceLevel, data.sumTalkTime, data.sumHoldTime, data.sumWaitTime, data.longestWaitTime, data.longestHoldTime, data.longestTalkTime, data.longestInboundACDIntereaction, data.longestOutboundACDIntereaction, data.createdAt, data.updatedAt, data.eventId);
204
191
  if (queuedetails.validationMessages.length > 0) {
205
192
  throw queuedetails.validationMessages;
206
193
  }
@@ -1,6 +1,6 @@
1
1
  import { BaseModel } from "../abstract/BaseModel";
2
2
  import { validationMessage } from "../interface/IBaseModel";
3
- export declare class IntervalSummaryModel extends BaseModel {
3
+ export declare class RealtimeDashboardSummaryModel extends BaseModel {
4
4
  private _id;
5
5
  private _uniqueName;
6
6
  private _periodNumber;
@@ -1,8 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.IntervalSummaryModel = void 0;
3
+ exports.RealtimeDashboardSummaryModel = void 0;
4
4
  const BaseModel_1 = require("../abstract/BaseModel");
5
- class IntervalSummaryModel extends BaseModel_1.BaseModel {
5
+ class RealtimeDashboardSummaryModel extends BaseModel_1.BaseModel {
6
6
  constructor(id, uniqueName, periodNumber, intOffr, intAns, intAbn, slaTarget, totalServiceLevel, sumTalkTime, sumHoldTime, sumWaitTime, longestWaitTime, longestHoldTime, longestTalkTime, longestInboundACDIntereaction, longestOutboundACDIntereaction, createdAt, updatedAt, eventId) {
7
7
  super();
8
8
  this._id = id;
@@ -258,4 +258,4 @@ class IntervalSummaryModel extends BaseModel_1.BaseModel {
258
258
  return this.validationMessages;
259
259
  }
260
260
  }
261
- exports.IntervalSummaryModel = IntervalSummaryModel;
261
+ exports.RealtimeDashboardSummaryModel = RealtimeDashboardSummaryModel;
@@ -23,5 +23,4 @@ export { TaskInfoModel } from "./impl/channelsettings/TaskInfoModel";
23
23
  export { CxConfigurator } from "./impl/cxconfig/CxConfigNamespace";
24
24
  export { AgentActionsModel } from "./impl/AgentActionsModel";
25
25
  export { AgentActionsLogsModel } from "./impl/AgentActionsLogsModel";
26
- export { IntervalSummaryModel } from "./impl/IntervalSummaryModel";
27
- export { DailySummaryModel } from "./impl/DailySummaryModel";
26
+ export { RealtimeDashboardSummaryModel } from "./impl/RealtimeDashboardSummaryModel";
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DailySummaryModel = exports.IntervalSummaryModel = exports.AgentActionsLogsModel = exports.AgentActionsModel = exports.CxConfigurator = exports.TaskInfoModel = exports.TaskInfoAttributeModel = exports.ChannelSettingTaskInfoModel = exports.ChannelSettingModel = exports.WorkGroupDetailsModel = exports.TaskModel = exports.TaskAttributesModel = exports.StatisticsTimeDetailsModel = exports.StatisticsNumberDetailsModel = exports.QuickLinkModel = exports.QueueModel = exports.QuestionDetailsModel = exports.QualityFormsModel = exports.ProfileModel = exports.PlaybackScreenrecordingsModel = exports.PerformanceStatisticsModel = exports.NavigationModel = exports.CategoryDetailModel = exports.CallbackVoicemail = exports.CallStatisticsModel = exports.CallLogsModel = exports.AuditLogModel = void 0;
3
+ exports.RealtimeDashboardSummaryModel = exports.AgentActionsLogsModel = exports.AgentActionsModel = exports.CxConfigurator = exports.TaskInfoModel = exports.TaskInfoAttributeModel = exports.ChannelSettingTaskInfoModel = exports.ChannelSettingModel = exports.WorkGroupDetailsModel = exports.TaskModel = exports.TaskAttributesModel = exports.StatisticsTimeDetailsModel = exports.StatisticsNumberDetailsModel = exports.QuickLinkModel = exports.QueueModel = exports.QuestionDetailsModel = exports.QualityFormsModel = exports.ProfileModel = exports.PlaybackScreenrecordingsModel = exports.PerformanceStatisticsModel = exports.NavigationModel = exports.CategoryDetailModel = exports.CallbackVoicemail = exports.CallStatisticsModel = exports.CallLogsModel = exports.AuditLogModel = void 0;
4
4
  var AuditLogsModel_1 = require("./impl/AuditLogsModel");
5
5
  Object.defineProperty(exports, "AuditLogModel", { enumerable: true, get: function () { return AuditLogsModel_1.AuditLogModel; } });
6
6
  var CallLogsModel_1 = require("./impl/CallLogsModel");
@@ -51,7 +51,5 @@ var AgentActionsModel_1 = require("./impl/AgentActionsModel");
51
51
  Object.defineProperty(exports, "AgentActionsModel", { enumerable: true, get: function () { return AgentActionsModel_1.AgentActionsModel; } });
52
52
  var AgentActionsLogsModel_1 = require("./impl/AgentActionsLogsModel");
53
53
  Object.defineProperty(exports, "AgentActionsLogsModel", { enumerable: true, get: function () { return AgentActionsLogsModel_1.AgentActionsLogsModel; } });
54
- var IntervalSummaryModel_1 = require("./impl/IntervalSummaryModel");
55
- Object.defineProperty(exports, "IntervalSummaryModel", { enumerable: true, get: function () { return IntervalSummaryModel_1.IntervalSummaryModel; } });
56
- var DailySummaryModel_1 = require("./impl/DailySummaryModel");
57
- Object.defineProperty(exports, "DailySummaryModel", { enumerable: true, get: function () { return DailySummaryModel_1.DailySummaryModel; } });
54
+ var RealtimeDashboardSummaryModel_1 = require("./impl/RealtimeDashboardSummaryModel");
55
+ Object.defineProperty(exports, "RealtimeDashboardSummaryModel", { enumerable: true, get: function () { return RealtimeDashboardSummaryModel_1.RealtimeDashboardSummaryModel; } });
package/lib/server.js CHANGED
@@ -5,7 +5,6 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const express_1 = __importDefault(require("express"));
7
7
  const MainController_1 = require("./controller/MainController");
8
- const RealTimeDashboardController_1 = require("./controller/RealTimeDashboardController");
9
8
  var cors = require('cors');
10
9
  const app = (0, express_1.default)();
11
10
  const PORT = 3010;
@@ -33,7 +32,7 @@ app.use(cors());
33
32
  Do not remove Below code
34
33
  */
35
34
  // app.use(validateRequiredCommonParams, validateRequiredParams)
36
- app.use('/realtime', (req, res) => new RealTimeDashboardController_1.RealTimeDashboardController().routeHandler(req, res));
35
+ // app.use('/realtime', (req, res) => new RealTimeDashboardController().routeHandler(req, res));
37
36
  app.use('/', (req, res, next) => new MainController_1.MainController().routeHandler(req, res));
38
37
  // Start the server
39
38
  app.listen(PORT, () => {
package/package.json CHANGED
@@ -1,56 +1,56 @@
1
- {
2
- "name": "hgs-twilio-class-lib",
3
- "version": "1.1.77",
4
- "description": "Flex 2.0 backend to connect with any database ",
5
- "main": "./lib/index.js",
6
- "types": "./types/index.d.ts",
7
- "type": "commonjs",
8
- "files": [
9
- "lib",
10
- "types",
11
- "package.json"
12
- ],
13
- "publishConfig": {
14
- "directory": "lib"
15
- },
16
- "scripts": {
17
- "clean": "rimraf lib types",
18
- "build": "npm run clean && tsc",
19
- "start": "node lib/server.js",
20
- "dev": "nodemon server.ts",
21
- "test": "echo \"Error: no test specified\" && exit 1",
22
- "check:unused": "ts-prune"
23
- },
24
- "author": "HGS",
25
- "license": "",
26
- "devDependencies": {
27
- "@rollup/plugin-commonjs": "^28.0.3",
28
- "@rollup/plugin-node-resolve": "^16.0.1",
29
- "@rollup/plugin-typescript": "^12.1.2",
30
- "@types/express": "4.17.21",
31
- "@types/node": "20.11.17",
32
- "@types/uuid": "9.0.8",
33
- "esbuild": "^0.25.4",
34
- "express": "^4.18.2",
35
- "fast-glob": "^3.3.3",
36
- "nodemon": "^3.1.0",
37
- "rimraf": "^6.0.1",
38
- "rollup": "^2.79.2",
39
- "rollup-plugin-terser": "^7.0.2",
40
- "rollup-plugin-visualizer": "^5.14.0",
41
- "ts-loader": "9.5.1",
42
- "ts-node": "^10.9.2",
43
- "typescript": "5.3.3"
44
- },
45
- "dependencies": {
46
- "@aws-sdk/client-connect": "3.723.0",
47
- "cors": "^2.8.5",
48
- "moment": "2.30.1",
49
- "moment-timezone": "^0.5.46",
50
- "twilio": "4.22.0",
51
- "uuid": "^9.0.1"
52
- },
53
- "engines": {
54
- "node": ">=18"
55
- }
56
- }
1
+ {
2
+ "name": "hgs-twilio-class-lib",
3
+ "version": "1.1.79",
4
+ "description": "Flex 2.0 backend to connect with any database ",
5
+ "main": "./lib/index.js",
6
+ "types": "./types/index.d.ts",
7
+ "type": "commonjs",
8
+ "files": [
9
+ "lib",
10
+ "types",
11
+ "package.json"
12
+ ],
13
+ "publishConfig": {
14
+ "directory": "lib"
15
+ },
16
+ "scripts": {
17
+ "clean": "rimraf lib types",
18
+ "build": "npm run clean && tsc",
19
+ "start": "node lib/server.js",
20
+ "dev": "nodemon server.ts",
21
+ "test": "echo \"Error: no test specified\" && exit 1",
22
+ "check:unused": "ts-prune"
23
+ },
24
+ "author": "HGS",
25
+ "license": "",
26
+ "devDependencies": {
27
+ "@rollup/plugin-commonjs": "^28.0.3",
28
+ "@rollup/plugin-node-resolve": "^16.0.1",
29
+ "@rollup/plugin-typescript": "^12.1.2",
30
+ "@types/express": "4.17.21",
31
+ "@types/node": "20.11.17",
32
+ "@types/uuid": "9.0.8",
33
+ "esbuild": "^0.25.4",
34
+ "express": "^4.18.2",
35
+ "fast-glob": "^3.3.3",
36
+ "nodemon": "^3.1.0",
37
+ "rimraf": "^6.0.1",
38
+ "rollup": "^2.79.2",
39
+ "rollup-plugin-terser": "^7.0.2",
40
+ "rollup-plugin-visualizer": "^5.14.0",
41
+ "ts-loader": "9.5.1",
42
+ "ts-node": "^10.9.2",
43
+ "typescript": "5.3.3"
44
+ },
45
+ "dependencies": {
46
+ "@aws-sdk/client-connect": "3.723.0",
47
+ "cors": "^2.8.5",
48
+ "moment": "2.30.1",
49
+ "moment-timezone": "^0.5.46",
50
+ "twilio": "4.22.0",
51
+ "uuid": "^9.0.1"
52
+ },
53
+ "engines": {
54
+ "node": ">=18"
55
+ }
56
+ }
@@ -1,60 +0,0 @@
1
- import { BaseModel } from "../abstract/BaseModel";
2
- import { validationMessage } from "../interface/IBaseModel";
3
- export declare class DailySummaryModel extends BaseModel {
4
- private _id;
5
- private _uniqueName;
6
- private _intOffr;
7
- private _intAns;
8
- private _intAbn;
9
- private _slaTarget;
10
- private _totalServiceLevel;
11
- private _sumTalkTime;
12
- private _sumHoldTime;
13
- private _sumWaitTime;
14
- private _longestWaitTime;
15
- private _longestHoldTime;
16
- private _longestTalkTime;
17
- private _longestInboundACDIntereaction;
18
- private _longestOutboundACDIntereaction;
19
- private _createdAt;
20
- private _updatedAt;
21
- private _eventId;
22
- constructor(id: string, uniqueName: string, intOffr: number, intAns: number, intAbn: number, slaTarget: number, totalServiceLevel: number, sumTalkTime: number, sumHoldTime: number, sumWaitTime: number, longestWaitTime: number, longestHoldTime: number, longestTalkTime: number, longestInboundACDIntereaction: number, longestOutboundACDIntereaction: number, createdAt: Date | undefined | string, updatedAt: Date | undefined | string, eventId: string);
23
- get id(): string;
24
- set id(value: string);
25
- get uniqueName(): string;
26
- set uniqueName(value: string);
27
- get intOffr(): number;
28
- set intOffr(value: number);
29
- get intAns(): number;
30
- set intAns(value: number);
31
- get intAbn(): number;
32
- set intAbn(value: number);
33
- get slaTarget(): number;
34
- set slaTarget(value: number);
35
- get totalServiceLevel(): number;
36
- set totalServiceLevel(value: number);
37
- get sumTalkTime(): number;
38
- set sumTalkTime(value: number);
39
- get sumHoldTime(): number;
40
- set sumHoldTime(value: number);
41
- get sumWaitTime(): number;
42
- set sumWaitTime(value: number);
43
- get longestWaitTime(): number;
44
- set longestWaitTime(value: number);
45
- get longestHoldTime(): number;
46
- set longestHoldTime(value: number);
47
- get longestTalkTime(): number;
48
- set longestTalkTime(value: number);
49
- get longestInboundACDIntereaction(): number;
50
- set longestInboundACDIntereaction(value: number);
51
- get longestOutboundACDIntereaction(): number;
52
- set longestOutboundACDIntereaction(value: number);
53
- get createdAt(): Date | undefined | string;
54
- set createdAt(value: Date | undefined | string);
55
- get updatedAt(): Date | undefined | string;
56
- set updatedAt(value: Date | undefined | string);
57
- get eventId(): string;
58
- set eventId(value: string);
59
- validateData(): validationMessage[];
60
- }
@@ -1,247 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DailySummaryModel = void 0;
4
- const BaseModel_1 = require("../abstract/BaseModel");
5
- class DailySummaryModel extends BaseModel_1.BaseModel {
6
- constructor(id, uniqueName, intOffr, intAns, intAbn, slaTarget, totalServiceLevel, sumTalkTime, sumHoldTime, sumWaitTime, longestWaitTime, longestHoldTime, longestTalkTime, longestInboundACDIntereaction, longestOutboundACDIntereaction, createdAt, updatedAt, eventId) {
7
- super();
8
- this._id = id;
9
- this._uniqueName = uniqueName;
10
- this._intOffr = intOffr;
11
- this._intAns = intAns;
12
- this._intAbn = intAbn;
13
- this._slaTarget = slaTarget;
14
- this._totalServiceLevel = totalServiceLevel;
15
- this._sumTalkTime = sumTalkTime;
16
- this._sumHoldTime = sumHoldTime;
17
- this._sumWaitTime = sumWaitTime;
18
- this._longestWaitTime = longestWaitTime;
19
- this._longestHoldTime = longestHoldTime;
20
- this._longestTalkTime = longestTalkTime;
21
- this._longestInboundACDIntereaction = longestInboundACDIntereaction;
22
- this._longestOutboundACDIntereaction = longestOutboundACDIntereaction;
23
- this._createdAt = createdAt;
24
- this._updatedAt = updatedAt;
25
- this._eventId = eventId;
26
- }
27
- // Getters and Setters
28
- get id() {
29
- return this._id;
30
- }
31
- set id(value) {
32
- this._id = value;
33
- }
34
- get uniqueName() {
35
- return this._uniqueName;
36
- }
37
- set uniqueName(value) {
38
- this._uniqueName = value;
39
- }
40
- get intOffr() {
41
- return this.intOffr;
42
- }
43
- set intOffr(value) {
44
- this.intOffr = value;
45
- }
46
- get intAns() {
47
- return this._intAns;
48
- }
49
- set intAns(value) {
50
- this._intAns = value;
51
- }
52
- get intAbn() {
53
- return this._intAbn;
54
- }
55
- set intAbn(value) {
56
- this._intAbn = value;
57
- }
58
- get slaTarget() {
59
- return this._slaTarget;
60
- }
61
- set slaTarget(value) {
62
- this._slaTarget = value;
63
- }
64
- get totalServiceLevel() {
65
- return this._totalServiceLevel;
66
- }
67
- set totalServiceLevel(value) {
68
- this._totalServiceLevel = value;
69
- }
70
- get sumTalkTime() {
71
- return this._sumTalkTime;
72
- }
73
- set sumTalkTime(value) {
74
- this._sumTalkTime = value;
75
- }
76
- get sumHoldTime() {
77
- return this._sumHoldTime;
78
- }
79
- set sumHoldTime(value) {
80
- this._sumHoldTime = value;
81
- }
82
- get sumWaitTime() {
83
- return this._sumWaitTime;
84
- }
85
- set sumWaitTime(value) {
86
- this._sumWaitTime = value;
87
- }
88
- get longestWaitTime() {
89
- return this._longestWaitTime;
90
- }
91
- set longestWaitTime(value) {
92
- this._longestWaitTime = value;
93
- }
94
- get longestHoldTime() {
95
- return this._longestHoldTime;
96
- }
97
- set longestHoldTime(value) {
98
- this._longestHoldTime = value;
99
- }
100
- get longestTalkTime() {
101
- return this._longestTalkTime;
102
- }
103
- set longestTalkTime(value) {
104
- this._longestTalkTime = value;
105
- }
106
- get longestInboundACDIntereaction() {
107
- return this._longestInboundACDIntereaction;
108
- }
109
- set longestInboundACDIntereaction(value) {
110
- this._longestInboundACDIntereaction = value;
111
- }
112
- get longestOutboundACDIntereaction() {
113
- return this._longestOutboundACDIntereaction;
114
- }
115
- set longestOutboundACDIntereaction(value) {
116
- this._longestOutboundACDIntereaction = value;
117
- }
118
- get createdAt() {
119
- return this._createdAt;
120
- }
121
- set createdAt(value) {
122
- this._createdAt = value;
123
- }
124
- get updatedAt() {
125
- return this._updatedAt;
126
- }
127
- set updatedAt(value) {
128
- this._updatedAt = value;
129
- }
130
- get eventId() {
131
- return this._eventId;
132
- }
133
- set eventId(value) {
134
- this._eventId = value;
135
- }
136
- // Validation Method
137
- validateData() {
138
- this.validationMessages = [];
139
- if (typeof this._id !== "string" || !this._id.trim()) {
140
- this.validationMessages.push({
141
- type: "Error",
142
- fieldDescription: "id",
143
- message: "ID must be a non-empty string",
144
- });
145
- }
146
- if (typeof this._uniqueName !== "string" || !this._uniqueName.trim()) {
147
- this.validationMessages.push({
148
- type: "Error",
149
- fieldDescription: "uniqueName",
150
- message: "Unique name must be a non-empty string",
151
- });
152
- }
153
- if (typeof this._intOffr !== "number" || this.intOffr < 0) {
154
- this.validationMessages.push({
155
- type: "Error",
156
- fieldDescription: "intOffr",
157
- message: "intOffr must be a non-negative number",
158
- });
159
- }
160
- if (typeof this._intAns !== "number" || this._intAns < 0) {
161
- this.validationMessages.push({
162
- type: "Error",
163
- fieldDescription: "intAns",
164
- message: "intAns must be a non-negative number",
165
- });
166
- }
167
- if (typeof this._intAbn !== "number" || this._intAbn < 0) {
168
- this.validationMessages.push({
169
- type: "Error",
170
- fieldDescription: "intAbn",
171
- message: "intAbn must be a non-negative number",
172
- });
173
- }
174
- if (typeof this._slaTarget !== "number" || this._slaTarget < 0) {
175
- this.validationMessages.push({
176
- type: "Error",
177
- fieldDescription: "slaTarget",
178
- message: "slaTarget must be a non-negative number",
179
- });
180
- }
181
- if (typeof this._totalServiceLevel !== "number" || this._totalServiceLevel < 0) {
182
- this.validationMessages.push({
183
- type: "Error",
184
- fieldDescription: "totalServiceLevel",
185
- message: "totalServiceLevel must be a non-negative number",
186
- });
187
- }
188
- if (typeof this._sumTalkTime !== "number" || this._sumTalkTime < 0) {
189
- this.validationMessages.push({
190
- type: "Error",
191
- fieldDescription: "sumTalkTime",
192
- message: "sumTalkTime must be a non-negative number",
193
- });
194
- }
195
- if (typeof this._sumHoldTime !== "number" || this._sumHoldTime < 0) {
196
- this.validationMessages.push({
197
- type: "Error",
198
- fieldDescription: "sumHoldTime",
199
- message: "sumHoldTime must be a non-negative number",
200
- });
201
- }
202
- if (typeof this._sumWaitTime !== "number" || this._sumWaitTime < 0) {
203
- this.validationMessages.push({
204
- type: "Error",
205
- fieldDescription: "sumWaitTime",
206
- message: "sumWaitTime must be a non-negative number",
207
- });
208
- }
209
- if (typeof this._longestWaitTime !== "number" || this._longestWaitTime < 0) {
210
- this.validationMessages.push({
211
- type: "Error",
212
- fieldDescription: "longestWaitTime",
213
- message: "longestWaitTime must be a non-negative number",
214
- });
215
- }
216
- if (typeof this._longestHoldTime !== "number" || this._longestHoldTime < 0) {
217
- this.validationMessages.push({
218
- type: "Error",
219
- fieldDescription: "longestHoldTime",
220
- message: "longestHoldTime must be a non-negative number",
221
- });
222
- }
223
- if (typeof this._longestTalkTime !== "number" || this._longestTalkTime < 0) {
224
- this.validationMessages.push({
225
- type: "Error",
226
- fieldDescription: "longestTalkTime",
227
- message: "longestTalkTime must be a non-negative number",
228
- });
229
- }
230
- if (typeof this._longestInboundACDIntereaction !== "number" || this._longestInboundACDIntereaction < 0) {
231
- this.validationMessages.push({
232
- type: "Error",
233
- fieldDescription: "longestInboundACDIntereaction",
234
- message: "longestInboundACDIntereaction must be a non-negative number",
235
- });
236
- }
237
- if (typeof this._longestOutboundACDIntereaction !== "number" || this._longestOutboundACDIntereaction < 0) {
238
- this.validationMessages.push({
239
- type: "Error",
240
- fieldDescription: "longestOutboundACDIntereaction",
241
- message: "longestOutboundACDIntereaction must be a non-negative number",
242
- });
243
- }
244
- return this.validationMessages;
245
- }
246
- }
247
- exports.DailySummaryModel = DailySummaryModel;