@voicenter-team/events-sdk 0.0.25 → 0.0.27

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.
@@ -1,36 +1,23 @@
1
+ import { AllDialersStatusEvent } from '@voicenter-team/real-time-events-types';
2
+ import { AllExtensionStatusEvent } from '@voicenter-team/real-time-events-types';
3
+ import { AllUsersStatusEvent } from '@voicenter-team/real-time-events-types';
1
4
  import { DebouncedFuncLeading } from 'lodash';
5
+ import { DialerEvent } from '@voicenter-team/real-time-events-types';
6
+ import { EventsEnum } from '@voicenter-team/real-time-events-types';
7
+ import { ExtensionEvent } from '@voicenter-team/real-time-events-types';
8
+ import { ExtensionsUpdated } from '@voicenter-team/real-time-events-types';
2
9
  import { io } from 'socket.io-client';
10
+ import { KeepAliveResponseEvent } from '@voicenter-team/real-time-events-types';
3
11
  import { LoggerOptions } from '@voicenter-team/socketio-storage-logger/dist/storage-logger';
12
+ import { LoginStatusEvent } from '@voicenter-team/real-time-events-types';
13
+ import { LoginSuccessEvent } from '@voicenter-team/real-time-events-types';
14
+ import { QueueEvent } from '@voicenter-team/real-time-events-types';
4
15
  import { Socket as Socket_2 } from 'socket.io-client';
5
16
 
6
17
  export declare type ActiveRoomListener = (event: number | undefined) => void
7
18
 
8
19
  export declare type addRoomListener = (value: string) => void
9
20
 
10
- /**
11
- * Data structure for all dialers status event.
12
- */
13
- export declare interface AllDialersStatusEvent extends CommonEventProperties {
14
- // Array of Dialer objects
15
- dialers: Dialer[]
16
- }
17
-
18
- /**
19
- * Data structure for all extension status event.
20
- */
21
- export declare interface AllExtensionStatusEvent extends CommonEventProperties {
22
- // Array of Extension objects
23
- extensions: Extension[]
24
- }
25
-
26
- /**
27
- * Data structure for all users status event.
28
- */
29
- export declare interface AllUsersStatusEvent extends CommonEventProperties {
30
- // Array of User objects
31
- users: User[]
32
- }
33
-
34
21
  declare class AuthClass {
35
22
  private readonly eventsSdkClass;
36
23
  constructor(eventsSdkClass: EventsSdkClass);
@@ -51,18 +38,6 @@ declare class AuthClass {
51
38
 
52
39
  export declare type CallAddingProgressListener = (callId: string | undefined) => void
53
40
 
54
- export declare enum CallStatusEnum {
55
- RINGING = "Ringing",
56
- TALKING = "Talking",
57
- DIALING = "Dialing",
58
- HOLD = "Hold"
59
- }
60
-
61
- export declare enum CallTypeEnum {
62
- INCOMING = "Incoming",
63
- OUTGOING = "Outgoing"
64
- }
65
-
66
41
  export declare type changeActiveCallsListener = (event: { [key: string]: string }) => void
67
42
 
68
43
  export declare type changeActiveInputMediaDeviceListener = (event: string) => void
@@ -77,69 +52,6 @@ export declare type changeIsMutedListener = (value: boolean) => void
77
52
 
78
53
  export declare type changeMuteWhenJoinListener = (value: boolean) => void
79
54
 
80
- /**
81
- * Base structure for all event types, containing common properties.
82
- */
83
- export declare interface CommonEventProperties {
84
- // Error code, 0 indicates no error
85
- errorCode?: number
86
- // Description of the error, "Ok" indicates successful connection
87
- errorDesc?: string
88
- // Server time at the moment of the event
89
- serverTime: number
90
- // Difference in time between server and client
91
- serverTimeOffset: number
92
- }
93
-
94
- export declare interface CustomData {
95
- DoNotCallMeStatus?: string,
96
- DoNotCallMeStatusCode?: DoNotCallMeStatusCodeEnum,
97
- DoNotCallMeTokenName?: string,
98
- DoNotCallMetransactionId?: string,
99
- IsDoNotCallMe?: string
100
- }
101
-
102
- export declare interface Dialer {
103
- campaignID: number,
104
- name: string,
105
- typeID: number,
106
- type: DialerType,
107
- code: string,
108
- calls: unknown,
109
- statistics: unknown
110
- }
111
-
112
- /**
113
- * Data structure for dialer event.
114
- */
115
- export declare interface DialerEvent extends CommonEventProperties {
116
- data: Dialer
117
- eventName: EventNameEnum.DIALER
118
- //reason: ExtensionEventReasonEnum // TODO: do research for dialer 'reason' prop
119
- telephonyServerTime?: number
120
- callerID?: string
121
- ivrUniqueId?: string
122
- dialStatus?: string
123
- //cause?: ExtensionHangupCauseEnum // TODO: do research for dialer 'cause' prop
124
- }
125
-
126
- export declare enum DialerType {
127
- AUTOMATIC = "Automatic",
128
- IVR = "IVR"
129
- }
130
-
131
- export declare enum DirectionEnum {
132
- INCOMING = "Incoming",
133
- OUTGOING = "Outgoing",
134
- SPY = "Spy",
135
- CLICK2CALL = "Click2call"
136
- }
137
-
138
- export declare enum DoNotCallMeStatusCodeEnum {
139
- RESPONSE_FROM_API_VALID = "RESPONSE_FROM_API_VALID",
140
- RESPONSE_FROM_API_INVALID = "RESPONSE_FROM_API_INVALID"
141
- }
142
-
143
55
  /**
144
56
  * This type defines a map where each key is an event name, and the value is an array of callback functions associated with that event.
145
57
  * This structure is used to manage event listeners for different events
@@ -171,6 +83,7 @@ export declare interface EventDataMap {
171
83
  [EventsEnum.LOGIN_STATUS]: LoginStatusEvent
172
84
  [EventsEnum.KEEP_ALIVE_RESPONSE]: KeepAliveResponseEvent
173
85
  [EventsEnum.ONLINE_STATUS_EVENT]: OnlineStatusEvent
86
+ [EventsEnum.EXTENSIONS_UPDATED]: ExtensionsUpdated
174
87
  }
175
88
 
176
89
  declare class EventEmitterClass {
@@ -185,35 +98,6 @@ declare class EventEmitterClass {
185
98
  emit<T extends EventTypeNames>(event: T, data: EventTypeData<T>): void;
186
99
  }
187
100
 
188
- /**
189
- * All the eventNames that can be received from the server. Exists only in EXTENSION_EVENT and QueueEvent
190
- */
191
- export declare enum EventNameEnum {
192
- EXTENSION = "extension",
193
- QUEUE = "queue",
194
- DIALER = "dialer"
195
- }
196
-
197
- /**
198
- * All events that can be received from the server.
199
- */
200
- export declare enum EventsEnum {
201
- ALL_DIALER_STATUS = "AllDialersStatus",
202
- ALL_EXTENSION_STATUS = "AllExtensionsStatus",
203
- ALL_USERS_STATUS = "AllUsersStatus",
204
- CONNECT = "connect",
205
- DISCONNECT = "disconnect",
206
- CONNECT_ERROR_EVENT = "connect_error",
207
- EXTENSION_EVENT = "ExtensionEvent",
208
- KEEP_ALIVE = "keepalive",
209
- KEEP_ALIVE_RESPONSE = "keepaliveResponse",
210
- LOGIN_STATUS = "loginStatus",
211
- LOGIN_SUCCESS = "loginSuccess",
212
- QUEUE_EVENT = "QueueEvent",
213
- ONLINE_STATUS_EVENT = "onlineStatusEvent",
214
- DIALER_EVENT = "DialerEvent"
215
- }
216
-
217
101
  /**
218
102
  * This is a generic type for callback functions used in event handling.
219
103
  * It takes a generic event name and defines a callback function that receives wrapped socket event data for that specific event.
@@ -333,94 +217,6 @@ export declare type EventWrappedSocketDataMap = {
333
217
  [K in EventTypeNames]: WrappedSocketEvent<K>
334
218
  }
335
219
 
336
- export declare interface Extension {
337
- calls: ExtensionCall[],
338
- userID: number,
339
- userName: string,
340
- number: number,
341
- extenUser: string,
342
- accountID: number,
343
- topAccountID: number,
344
- summery: Summery,
345
- onlineUserID: number,
346
- representative: number,
347
- representativeStatus: number,
348
- lastCallEventEpoch: number,
349
- lastAnsweredCallEventEpoch: number,
350
- lastHangupCallEpoch: number,
351
- representativeUpdated: number,
352
- peerStatus: unknown,
353
- currentCall?: ExtensionCall,
354
- }
355
-
356
- export declare interface ExtensionCall {
357
- callStarted: number,
358
- calldurationinterval: number,
359
- callAnswered: number,
360
- answered: number,
361
- callername: string,
362
- callerphone: string,
363
- outgoingcallername?: string,
364
- outgoingcallerphone?: string,
365
- callstatus: CallStatusEnum,
366
- customdata: CustomData,
367
- direction: DirectionEnum,
368
- ivrid: string,
369
- recording: Recording,
370
- did: string,
371
- relatedIvrUniqueIDs?: string[],
372
- callType?: CallTypeEnum,
373
- ip: string,
374
- isInternal: boolean
375
- blcServerID: number,
376
- isOpensips: boolean,
377
- channel: string,
378
- channel2: string,
379
- queueID?: number,
380
- isSpyed?: boolean,
381
- blcServerId?: number,
382
- originalCallerID?: string,
383
- originalCallerName?: string,
384
- actualDialedNumber?: number
385
- }
386
-
387
- /**
388
- * Data structure for extension event.
389
- */
390
- export declare interface ExtensionEvent extends CommonEventProperties {
391
- data: Extension
392
- eventName: EventNameEnum.EXTENSION
393
- reason: ExtensionEventReasonEnum
394
- telephonyServerTime?: number
395
- callerID?: string
396
- ivrUniqueId?: string
397
- dialStatus?: string
398
- cause?: ExtensionHangupCauseEnum
399
- }
400
-
401
- /**
402
- * All the reasons for the extension event, e.g. a new call is ringing or dialing from an extension.
403
- */
404
- export declare enum ExtensionEventReasonEnum {
405
- NEW_CALL = "NEWCALL",
406
- ANSWER = "ANSWER",
407
- HOLD = "HOLD",
408
- UNHOLD = "UNHOLD",
409
- HANGUP = "HANGUP",
410
- USER_STATUS_UPDATE = "userStatusUpdate"
411
- }
412
-
413
- export declare enum ExtensionHangupCauseEnum {
414
- NORMAL_HANGUP = "Normal hangup",
415
- USER_BUSY = "User busy",
416
- CALL_REJECTED = "Call Rejected",
417
- UNALLOCATED_NUMBER = "Unallocated (unassigned) number",
418
- UNKNOWN = "Unknown",
419
- NO_USER_RESPONDING = "No user responding",
420
- USER_ALERTING = "User alerting, no answer",
421
- ANSWERED_ELSEWHERE = "Answered elsewhere"
422
- }
423
-
424
220
  export declare interface ExternalLoginNewStackResponseData {
425
221
  AccessToken: string,
426
222
  RefreshToken: string
@@ -449,13 +245,6 @@ export declare interface ExternalLoginResponse<T> {
449
245
  */
450
246
  export declare type GenericEventWrapper = EventWrappedSocketDataMap[EventTypeNames]
451
247
 
452
- /**
453
- * Data structure for keep alive response event.
454
- */
455
- export declare interface KeepAliveResponseEvent extends CommonEventProperties {
456
- isOk: boolean
457
- }
458
-
459
248
  export declare type ListenerCallbackFnType<T extends ListenersKeyType> = OpenSIPSEventMap[T]
460
249
 
461
250
  export declare type ListenersCallbackFnType = OpenSIPSEventMap[ListenersKeyType]
@@ -504,16 +293,6 @@ export declare interface LoginSessionPayload {
504
293
  password: string
505
294
  }
506
295
 
507
- /**
508
- * Data structure for login status event.
509
- */
510
- export declare interface LoginStatusEvent extends CommonEventProperties {
511
- // Array of Queue objects
512
- queues: Queue[]
513
- }
514
-
515
- export declare type LoginSuccessEvent = CommonEventProperties
516
-
517
296
  declare enum LoginType {
518
297
  USER = "User",
519
298
  TOKEN = "Token"
@@ -542,44 +321,6 @@ export declare interface OpenSIPSEventMap {
542
321
  changeCallStatus: changeCallStatusListener
543
322
  }
544
323
 
545
- export declare interface Queue {
546
- QueueID: number,
547
- QueueName: string,
548
- Calls: QueueCall[],
549
- UserId?: number,
550
- DistributorID?: number,
551
- IsDistributedQueue?: boolean,
552
- AnsweredAgent?: string,
553
- }
554
-
555
- export declare interface QueueCall {
556
- CallerID: string,
557
- CallerName: string,
558
- IvrUniqueID: string,
559
- JoinTimeStamp: number,
560
- calldurationinterval: number,
561
- ivrid: string,
562
- isDistributedQueue?: boolean
563
- }
564
-
565
- /**
566
- * Data structure for queue event.
567
- */
568
- export declare interface QueueEvent extends CommonEventProperties {
569
- eventName: EventNameEnum.QUEUE,
570
- reason: QueueEventReasonEnum,
571
- telephonyServerTime: number,
572
- ivrUniqueId: string,
573
- data: Queue
574
- }
575
-
576
- export declare enum QueueEventReasonEnum {
577
- ANSWER = "ANSWER",
578
- ABANDONED = "ABANDONED",
579
- EXIT = "EXIT",
580
- JOIN = "JOIN"
581
- }
582
-
583
324
  export declare type readyListener = (value: boolean) => void
584
325
 
585
326
  export declare interface ReconnectOptions {
@@ -590,13 +331,6 @@ export declare interface ReconnectOptions {
590
331
  maxReconnectionDelay: number;
591
332
  }
592
333
 
593
- export declare interface Recording {
594
- Filename: string,
595
- Options: string,
596
- ApproximateURL: string,
597
- IsMuted: number
598
- }
599
-
600
334
  export declare type removeRoomListener = (value: string) => void
601
335
 
602
336
  export declare type RoomDeletedListener = (roomId: number) => void
@@ -663,23 +397,12 @@ declare class SocketIoClass {
663
397
 
664
398
  export declare type SocketTyped = Socket_2<EventCallbackRegistry, Record<EventsEnum, any>>
665
399
 
666
- export declare interface Summery {
667
- representative: string
668
- }
669
-
670
400
  export declare type TestEventListener = (event: { test: string }) => void
671
401
 
672
402
  declare type TypedSocketIo = (...args: Parameters<typeof io>) => SocketTyped;
673
403
 
674
404
  export declare type updateRoomListener = (value: string) => void
675
405
 
676
- export declare interface User {
677
- userID: number,
678
- userName: string,
679
- accountID: number
680
-
681
- }
682
-
683
406
  export declare type WrappedSocketEvent<T extends EventsEnum> = {
684
407
  name: T
685
408
  data: EventDataMap[T]