@webex/calling 3.4.0 → 3.5.0-next.10

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 (101) hide show
  1. package/dist/CallHistory/CallHistory.js +103 -4
  2. package/dist/CallHistory/CallHistory.js.map +1 -1
  3. package/dist/CallHistory/CallHistory.test.js +143 -0
  4. package/dist/CallHistory/CallHistory.test.js.map +1 -1
  5. package/dist/CallHistory/callHistoryFixtures.js +224 -1
  6. package/dist/CallHistory/callHistoryFixtures.js.map +1 -1
  7. package/dist/CallHistory/constants.js +8 -2
  8. package/dist/CallHistory/constants.js.map +1 -1
  9. package/dist/CallHistory/types.js.map +1 -1
  10. package/dist/CallSettings/UcmBackendConnector.js +1 -1
  11. package/dist/CallSettings/UcmBackendConnector.js.map +1 -1
  12. package/dist/CallSettings/UcmBackendConnector.test.js +1 -1
  13. package/dist/CallSettings/UcmBackendConnector.test.js.map +1 -1
  14. package/dist/CallSettings/constants.js +1 -3
  15. package/dist/CallSettings/constants.js.map +1 -1
  16. package/dist/CallingClient/CallingClient.js +11 -2
  17. package/dist/CallingClient/CallingClient.js.map +1 -1
  18. package/dist/CallingClient/CallingClient.test.js +249 -193
  19. package/dist/CallingClient/CallingClient.test.js.map +1 -1
  20. package/dist/CallingClient/calling/call.js +81 -0
  21. package/dist/CallingClient/calling/call.js.map +1 -1
  22. package/dist/CallingClient/calling/call.test.js +332 -217
  23. package/dist/CallingClient/calling/call.test.js.map +1 -1
  24. package/dist/CallingClient/constants.js +2 -1
  25. package/dist/CallingClient/constants.js.map +1 -1
  26. package/dist/CallingClient/registration/register.js +18 -13
  27. package/dist/CallingClient/registration/register.js.map +1 -1
  28. package/dist/CallingClient/registration/register.test.js +242 -125
  29. package/dist/CallingClient/registration/register.test.js.map +1 -1
  30. package/dist/Contacts/ContactsClient.js +39 -27
  31. package/dist/Contacts/ContactsClient.js.map +1 -1
  32. package/dist/Contacts/ContactsClient.test.js +64 -1
  33. package/dist/Contacts/ContactsClient.test.js.map +1 -1
  34. package/dist/Contacts/contactFixtures.js +26 -3
  35. package/dist/Contacts/contactFixtures.js.map +1 -1
  36. package/dist/Contacts/types.js.map +1 -1
  37. package/dist/Events/types.js.map +1 -1
  38. package/dist/Metrics/index.js +2 -2
  39. package/dist/Metrics/index.js.map +1 -1
  40. package/dist/common/Utils.js +24 -19
  41. package/dist/common/Utils.js.map +1 -1
  42. package/dist/common/Utils.test.js +122 -1
  43. package/dist/common/Utils.test.js.map +1 -1
  44. package/dist/common/constants.js +6 -1
  45. package/dist/common/constants.js.map +1 -1
  46. package/dist/common/testUtil.js +23 -1
  47. package/dist/common/testUtil.js.map +1 -1
  48. package/dist/common/types.js.map +1 -1
  49. package/dist/module/CallHistory/CallHistory.js +57 -3
  50. package/dist/module/CallHistory/callHistoryFixtures.js +215 -0
  51. package/dist/module/CallHistory/constants.js +7 -1
  52. package/dist/module/CallSettings/UcmBackendConnector.js +5 -3
  53. package/dist/module/CallSettings/constants.js +0 -2
  54. package/dist/module/CallingClient/CallingClient.js +13 -2
  55. package/dist/module/CallingClient/calling/call.js +50 -0
  56. package/dist/module/CallingClient/constants.js +1 -0
  57. package/dist/module/CallingClient/registration/register.js +12 -6
  58. package/dist/module/Contacts/ContactsClient.js +28 -17
  59. package/dist/module/Contacts/contactFixtures.js +25 -2
  60. package/dist/module/Metrics/index.js +6 -2
  61. package/dist/module/common/Utils.js +13 -7
  62. package/dist/module/common/constants.js +5 -0
  63. package/dist/module/common/testUtil.js +24 -0
  64. package/dist/types/CallHistory/CallHistory.d.ts +1 -0
  65. package/dist/types/CallHistory/CallHistory.d.ts.map +1 -1
  66. package/dist/types/CallHistory/callHistoryFixtures.d.ts +98 -1
  67. package/dist/types/CallHistory/callHistoryFixtures.d.ts.map +1 -1
  68. package/dist/types/CallHistory/constants.d.ts +7 -1
  69. package/dist/types/CallHistory/constants.d.ts.map +1 -1
  70. package/dist/types/CallHistory/types.d.ts +9 -1
  71. package/dist/types/CallHistory/types.d.ts.map +1 -1
  72. package/dist/types/CallSettings/UcmBackendConnector.d.ts.map +1 -1
  73. package/dist/types/CallSettings/constants.d.ts +0 -2
  74. package/dist/types/CallSettings/constants.d.ts.map +1 -1
  75. package/dist/types/CallingClient/CallingClient.d.ts.map +1 -1
  76. package/dist/types/CallingClient/calling/call.d.ts +1 -0
  77. package/dist/types/CallingClient/calling/call.d.ts.map +1 -1
  78. package/dist/types/CallingClient/constants.d.ts +1 -0
  79. package/dist/types/CallingClient/constants.d.ts.map +1 -1
  80. package/dist/types/CallingClient/registration/register.d.ts +1 -0
  81. package/dist/types/CallingClient/registration/register.d.ts.map +1 -1
  82. package/dist/types/Contacts/ContactsClient.d.ts +1 -1
  83. package/dist/types/Contacts/ContactsClient.d.ts.map +1 -1
  84. package/dist/types/Contacts/contactFixtures.d.ts +28 -0
  85. package/dist/types/Contacts/contactFixtures.d.ts.map +1 -1
  86. package/dist/types/Contacts/types.d.ts +3 -3
  87. package/dist/types/Contacts/types.d.ts.map +1 -1
  88. package/dist/types/Events/types.d.ts +15 -0
  89. package/dist/types/Events/types.d.ts.map +1 -1
  90. package/dist/types/Metrics/index.d.ts.map +1 -1
  91. package/dist/types/Voicemail/UcmBackendConnector.d.ts +1 -1
  92. package/dist/types/Voicemail/WxCallBackendConnector.d.ts +1 -1
  93. package/dist/types/common/Utils.d.ts +2 -2
  94. package/dist/types/common/Utils.d.ts.map +1 -1
  95. package/dist/types/common/constants.d.ts +5 -0
  96. package/dist/types/common/constants.d.ts.map +1 -1
  97. package/dist/types/common/testUtil.d.ts +20 -0
  98. package/dist/types/common/testUtil.d.ts.map +1 -1
  99. package/dist/types/common/types.d.ts +12 -12
  100. package/dist/types/common/types.d.ts.map +1 -1
  101. package/package.json +3 -3
@@ -1 +1 @@
1
- {"version":3,"names":["_types","require","COMMON_EVENT_KEYS","exports","LINE_EVENT_KEYS","CALLING_CLIENT_EVENT_KEYS","CALL_EVENT_KEYS","SUPPLEMENTARY_SERVICES","MOBIUS_MIDCALL_STATE","Disposition","SessionType","MOBIUS_EVENT_KEYS","MEDIA_CONNECTION_EVENT_KEYS","CALL_STATE","WEBSOCKET_SCOPE","WEBSOCKET_KEYS"],"sources":["types.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-unused-vars */ // TODO: remove once we define the payloads\nimport {ILine} from '../api';\nimport {LINE_EVENTS} from '../CallingClient/line/types';\nimport type {ICall} from '../CallingClient/calling/types';\nimport {CallId, DisplayInformation} from '../common/types';\nimport {CallError, CallingClientError, LineError} from '../Errors';\n\n/** External Eventing Start */\nexport enum COMMON_EVENT_KEYS {\n CB_VOICEMESSAGE_CONTENT_GET = 'call_back_voicemail_content_get',\n CALL_HISTORY_USER_SESSION_INFO = 'callHistory:user_recent_sessions',\n CALL_HISTORY_USER_VIEWED_SESSIONS = 'callHistory:user_viewed_sessions',\n}\n\nexport enum LINE_EVENT_KEYS {\n INCOMING_CALL = 'incoming_call',\n}\n\nexport enum CALLING_CLIENT_EVENT_KEYS {\n ERROR = 'callingClient:error',\n OUTGOING_CALL = 'callingClient:outgoing_call',\n USER_SESSION_INFO = 'callingClient:user_recent_sessions',\n ALL_CALLS_CLEARED = 'callingClient:all_calls_cleared',\n}\n\nexport enum CALL_EVENT_KEYS {\n ALERTING = 'alerting',\n CALL_ERROR = 'call_error',\n CALLER_ID = 'caller_id',\n CONNECT = 'connect',\n DISCONNECT = 'disconnect',\n ESTABLISHED = 'established',\n HELD = 'held',\n HOLD_ERROR = 'hold_error',\n PROGRESS = 'progress',\n REMOTE_MEDIA = 'remote_media',\n RESUME_ERROR = 'resume_error',\n RESUMED = 'resumed',\n TRANSFER_ERROR = 'transfer_error',\n}\n\nexport enum SUPPLEMENTARY_SERVICES {\n HOLD = 'hold',\n RESUME = 'resume',\n DIVERT = 'divert',\n TRANSFER = 'transfer',\n PARK = 'park',\n}\n\nexport enum MOBIUS_MIDCALL_STATE {\n HELD = 'HELD',\n CONNECTED = 'CONNECTED',\n}\n\nexport enum Disposition {\n ANSWERED = 'Answered',\n CANCELED = 'Canceled',\n INITIATED = 'Initiated',\n MISSED = 'MISSED',\n}\n\nexport type CallRecordLink = {\n locusUrl?: string;\n conversationUrl?: string;\n callbackAddress: string;\n};\n\nexport type CallBackInfo = {\n callbackAddress: string;\n callbackType: string;\n};\n\nexport type LookUpInfo = {\n lookupLink: string;\n type: string;\n};\n\nexport type CallRecordSelf = {\n id: string;\n name?: string;\n phoneNumber?: string;\n};\n\nexport type CallRecordListOther = {\n ownerId?: string;\n id: string;\n name?: string;\n sipUrl?: string;\n primaryDisplayString?: string;\n secondaryDisplayString?: string;\n isPrivate: boolean;\n callbackAddress: string;\n phoneNumber?: string;\n contact?: string;\n email?: string;\n};\n\nexport type RedirectionDetails = {\n phoneNumber?: string;\n sipUrl?: string;\n name?: string;\n reason: string;\n userId?: string;\n isPrivate: boolean;\n};\n\nexport enum SessionType {\n SPARK = 'SPARK',\n WEBEX_CALLING = 'WEBEXCALLING',\n}\n\nexport type UserSession = {\n id: string;\n sessionId: string;\n disposition: Disposition;\n startTime: string;\n endTime: string;\n url: string;\n durationSeconds: number;\n joinedDurationSeconds: number;\n participantCount: number;\n isDeleted: boolean;\n isPMR: boolean;\n correlationIds: string[];\n links: CallRecordLink;\n self: CallRecordSelf;\n durationSecs: number;\n other: CallRecordListOther;\n sessionType: SessionType;\n direction: string;\n callingSpecifics?: {\n redirectionDetails: RedirectionDetails;\n };\n};\n\nexport type CallingParty = {\n name?: string;\n number?: string;\n privacyEnabled?: boolean;\n userId?: string;\n address?: string;\n};\n\nexport type Item = {\n id?: string;\n duration?: number;\n callingParty?: CallingParty;\n urgent?: boolean;\n confidential?: boolean;\n read?: boolean;\n created?: string;\n messageId?: string;\n time?: number;\n};\n\nexport enum MOBIUS_EVENT_KEYS {\n SERVER_EVENT_INCLUSIVE = 'event:mobius',\n CALL_SESSION_EVENT_INCLUSIVE = 'event:janus.user_recent_sessions',\n CALL_SESSION_EVENT_LEGACY = 'event:janus.user_sessions',\n CALL_SESSION_EVENT_VIEWED = 'event:janus.user_viewed_sessions',\n}\n\nexport type CallSessionData = {\n userSessions: {\n userSessions: UserSession[];\n statusCode: number;\n };\n eventType:\n | MOBIUS_EVENT_KEYS.CALL_SESSION_EVENT_INCLUSIVE\n | MOBIUS_EVENT_KEYS.CALL_SESSION_EVENT_LEGACY;\n};\n\nexport type CallSessionEvent = {\n id: string;\n data: CallSessionData;\n timestamp: number;\n trackingId: string;\n};\n\nexport enum MEDIA_CONNECTION_EVENT_KEYS {\n ROAP_MESSAGE_TO_SEND = 'roap:messageToSend',\n MEDIA_TYPE_AUDIO = 'audio',\n}\n\nexport type CallerIdDisplay = {\n correlationId: string;\n callerId: DisplayInformation;\n};\n\nexport type LineEventTypes = {\n [LINE_EVENTS.CONNECTING]: () => void;\n [LINE_EVENTS.ERROR]: (error: LineError) => void;\n [LINE_EVENTS.RECONNECTED]: () => void;\n [LINE_EVENTS.RECONNECTING]: () => void;\n [LINE_EVENTS.REGISTERED]: (lineInfo: ILine) => void;\n [LINE_EVENTS.UNREGISTERED]: () => void;\n [LINE_EVENTS.INCOMING_CALL]: (callObj: ICall) => void;\n};\n\nexport type CallEventTypes = {\n [CALL_EVENT_KEYS.ALERTING]: (callId: CallId) => void;\n [CALL_EVENT_KEYS.CALL_ERROR]: (error: CallError) => void;\n [CALL_EVENT_KEYS.CALLER_ID]: (display: CallerIdDisplay) => void;\n [CALL_EVENT_KEYS.CONNECT]: (callId: CallId) => void;\n [CALL_EVENT_KEYS.DISCONNECT]: (callId: CallId) => void;\n [CALL_EVENT_KEYS.ESTABLISHED]: (callId: CallId) => void;\n [CALL_EVENT_KEYS.HELD]: (callId: CallId) => void;\n [CALL_EVENT_KEYS.HOLD_ERROR]: (error: CallError) => void;\n [LINE_EVENT_KEYS.INCOMING_CALL]: (callObj: ICall) => void;\n [CALL_EVENT_KEYS.PROGRESS]: (callId: CallId) => void;\n [CALL_EVENT_KEYS.REMOTE_MEDIA]: (track: MediaStreamTrack) => void;\n [CALL_EVENT_KEYS.RESUME_ERROR]: (error: CallError) => void;\n [CALL_EVENT_KEYS.RESUMED]: (callId: CallId) => void;\n [CALL_EVENT_KEYS.TRANSFER_ERROR]: (error: CallError) => void;\n [CALLING_CLIENT_EVENT_KEYS.ALL_CALLS_CLEARED]: () => void;\n};\n\nexport type MessageId = {\n messageId: string;\n};\n\nexport type VoicemailEventTypes = {\n [COMMON_EVENT_KEYS.CB_VOICEMESSAGE_CONTENT_GET]: (messageId: MessageId) => void;\n};\n\nexport type CallingClientEventTypes = {\n [CALLING_CLIENT_EVENT_KEYS.ERROR]: (error: CallingClientError) => void;\n [CALLING_CLIENT_EVENT_KEYS.USER_SESSION_INFO]: (event: CallSessionEvent) => void;\n [CALLING_CLIENT_EVENT_KEYS.OUTGOING_CALL]: (callId: string) => void;\n [CALLING_CLIENT_EVENT_KEYS.ALL_CALLS_CLEARED]: () => void;\n};\n\nexport type CallHistoryEventTypes = {\n [COMMON_EVENT_KEYS.CALL_HISTORY_USER_SESSION_INFO]: (event: CallSessionEvent) => void;\n [COMMON_EVENT_KEYS.CALL_HISTORY_USER_VIEWED_SESSIONS]: (event: CallSessionViewedEvent) => void;\n};\n/* External Eventing End */\n\n/** Internal Eventing Start */\nenum CALL_STATE {\n HELD = 'held',\n REMOTE_HELD = 'remoteheld',\n CONNECTED = 'connected',\n}\ntype eventType = string;\ntype callProgressData = {\n alerting: boolean;\n inbandROAP: boolean;\n};\nexport type CallerIdInfo = {\n 'x-broadworks-remote-party-info'?: string;\n 'p-asserted-identity'?: string;\n from?: string;\n};\ntype callId = string;\ntype deviceId = string;\ntype correlationId = string;\ntype callUrl = string;\ntype causecode = number;\ntype cause = string;\ntype eventData = {\n callerId: CallerIdInfo;\n callState: CALL_STATE;\n};\ntype midCallServiceData = {\n eventType: eventType;\n eventData: eventData;\n};\ntype midCallService = Array<midCallServiceData>;\n\ninterface BaseMessage {\n eventType: eventType;\n correlationId: correlationId;\n deviceId: deviceId;\n callId: callId;\n callUrl: callUrl;\n}\n\nexport interface CallSetupMessage extends BaseMessage {\n callerId: CallerIdInfo;\n trackingId: string;\n alertType: string;\n}\n\ninterface CallProgressMessage extends BaseMessage {\n callProgressData: callProgressData;\n callerId: CallerIdInfo;\n}\n\nexport const WEBSOCKET_SCOPE = 'mobius';\nexport enum WEBSOCKET_KEYS {\n CALL_PROGRESS = 'callprogress',\n CALL_CONNECTED = 'callconnected',\n CALL_DISCONNECTED = 'callconnected',\n CALL_INFO = 'callinfo',\n CALL = 'call',\n ROAP = 'ROAP',\n}\n/** Internal Eventing End */\n\n/** State Machine Events */\n\nexport type CallEvent =\n /* Received Events */\n | {type: 'E_RECV_CALL_SETUP'; data?: unknown}\n | {type: 'E_RECV_CALL_PROGRESS'; data?: unknown}\n | {type: 'E_RECV_CALL_CONNECT'; data?: unknown}\n | {type: 'E_RECV_CALL_DISCONNECT'; data?: unknown}\n\n /* Sent Events */\n | {type: 'E_SEND_CALL_SETUP'; data?: unknown}\n | {type: 'E_SEND_CALL_ALERTING'; data?: unknown}\n | {type: 'E_SEND_CALL_CONNECT'; data?: unknown}\n | {type: 'E_SEND_CALL_DISCONNECT'; data?: unknown}\n\n /* Common Events */\n | {type: 'E_CALL_ESTABLISHED'; data?: unknown}\n | {type: 'E_CALL_INFO'; data?: unknown}\n | {type: 'E_UNKNOWN'; data?: unknown}\n | {type: 'E_CALL_CLEARED'; data?: unknown}\n | {type: 'E_CALL_HOLD'; data?: unknown}\n | {type: 'E_CALL_RESUME'; data?: unknown};\n\n/* ROAP Events */\nexport type RoapEvent =\n | {type: 'E_SEND_ROAP_OFFER'; data?: unknown}\n | {type: 'E_SEND_ROAP_ANSWER'; data?: unknown}\n | {type: 'E_RECV_ROAP_OFFER'; data?: unknown}\n | {type: 'E_RECV_ROAP_ANSWER'; data?: unknown}\n | {type: 'E_ROAP_ERROR'; data?: unknown}\n | {type: 'E_ROAP_OK'; data?: unknown}\n | {type: 'E_RECV_ROAP_OFFER_REQUEST'; data?: unknown} // ROAP request to explicitly ask Client to do OFFER\n | {type: 'E_ROAP_TEARDOWN'; data?: unknown};\n\n// TODO: export RoapMessage type from the media SDK to use here\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport interface RoapMessage {\n seq: number;\n messageType: 'OFFER' | 'ANSWER' | 'OK' | 'ERROR' | 'OFFER_REQUEST';\n offererSessionId?: string;\n answererSessionId?: string;\n sdp?: string;\n version?: string;\n tieBreaker?: string;\n errorType?: string;\n}\n\nexport type UserReadSessions = {\n sessionId: string;\n};\n\nexport type CallSessionViewedData = {\n userReadSessions: {\n userReadSessions: UserReadSessions[];\n statusCode: number;\n };\n eventType: MOBIUS_EVENT_KEYS.CALL_SESSION_EVENT_VIEWED;\n};\n\nexport type CallSessionViewedEvent = {\n id: string;\n data: CallSessionViewedData;\n timestamp: number;\n trackingId: string;\n};\n\nexport type EndTimeSessionId = {\n endTime: string;\n sessionId: string;\n};\nexport type SanitizedEndTimeAndSessionId = {\n endTime: number;\n sessionId: string;\n};\n"],"mappings":";;;;;;;AAEA,IAAAA,MAAA,GAAAC,OAAA;AAFA;AAAuD;AAOvD;AAAA,IACYC,iBAAiB,GAAAC,OAAA,CAAAD,iBAAA,0BAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAA,OAAjBA,iBAAiB;AAAA;AAAA,IAMjBE,eAAe,GAAAD,OAAA,CAAAC,eAAA,0BAAfA,eAAe;EAAfA,eAAe;EAAA,OAAfA,eAAe;AAAA;AAAA,IAIfC,yBAAyB,GAAAF,OAAA,CAAAE,yBAAA,0BAAzBA,yBAAyB;EAAzBA,yBAAyB;EAAzBA,yBAAyB;EAAzBA,yBAAyB;EAAzBA,yBAAyB;EAAA,OAAzBA,yBAAyB;AAAA;AAAA,IAOzBC,eAAe,GAAAH,OAAA,CAAAG,eAAA,0BAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAA,OAAfA,eAAe;AAAA;AAAA,IAgBfC,sBAAsB,GAAAJ,OAAA,CAAAI,sBAAA,0BAAtBA,sBAAsB;EAAtBA,sBAAsB;EAAtBA,sBAAsB;EAAtBA,sBAAsB;EAAtBA,sBAAsB;EAAtBA,sBAAsB;EAAA,OAAtBA,sBAAsB;AAAA;AAAA,IAQtBC,oBAAoB,GAAAL,OAAA,CAAAK,oBAAA,0BAApBA,oBAAoB;EAApBA,oBAAoB;EAApBA,oBAAoB;EAAA,OAApBA,oBAAoB;AAAA;AAAA,IAKpBC,WAAW,GAAAN,OAAA,CAAAM,WAAA,0BAAXA,WAAW;EAAXA,WAAW;EAAXA,WAAW;EAAXA,WAAW;EAAXA,WAAW;EAAA,OAAXA,WAAW;AAAA;AAAA,IAoDXC,WAAW,GAAAP,OAAA,CAAAO,WAAA,0BAAXA,WAAW;EAAXA,WAAW;EAAXA,WAAW;EAAA,OAAXA,WAAW;AAAA;AAAA,IAiDXC,iBAAiB,GAAAR,OAAA,CAAAQ,iBAAA,0BAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAA,OAAjBA,iBAAiB;AAAA;AAAA,IAwBjBC,2BAA2B,GAAAT,OAAA,CAAAS,2BAAA,0BAA3BA,2BAA2B;EAA3BA,2BAA2B;EAA3BA,2BAA2B;EAAA,OAA3BA,2BAA2B;AAAA;AAyDvC;AAEA;AAAA,IACKC,UAAU,0BAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAA,OAAVA,UAAU;AAAA,EAAVA,UAAU;AAkDR,IAAMC,eAAe,GAAAX,OAAA,CAAAW,eAAA,GAAG,QAAQ;AAAC,IAC5BC,cAAc,GAAAZ,OAAA,CAAAY,cAAA,0BAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAA,OAAdA,cAAc;AAAA;AAQ1B;AAEA;AAuBA;AAWA;AACA"}
1
+ {"version":3,"names":["_types","require","COMMON_EVENT_KEYS","exports","LINE_EVENT_KEYS","CALLING_CLIENT_EVENT_KEYS","CALL_EVENT_KEYS","SUPPLEMENTARY_SERVICES","MOBIUS_MIDCALL_STATE","Disposition","SessionType","MOBIUS_EVENT_KEYS","MEDIA_CONNECTION_EVENT_KEYS","CALL_STATE","WEBSOCKET_SCOPE","WEBSOCKET_KEYS"],"sources":["types.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-unused-vars */ // TODO: remove once we define the payloads\nimport {ILine} from '../api';\nimport {LINE_EVENTS} from '../CallingClient/line/types';\nimport type {ICall} from '../CallingClient/calling/types';\nimport {CallId, DisplayInformation} from '../common/types';\nimport {CallError, CallingClientError, LineError} from '../Errors';\n\n/** External Eventing Start */\nexport enum COMMON_EVENT_KEYS {\n CB_VOICEMESSAGE_CONTENT_GET = 'call_back_voicemail_content_get',\n CALL_HISTORY_USER_SESSION_INFO = 'callHistory:user_recent_sessions',\n CALL_HISTORY_USER_VIEWED_SESSIONS = 'callHistory:user_viewed_sessions',\n}\n\nexport enum LINE_EVENT_KEYS {\n INCOMING_CALL = 'incoming_call',\n}\n\nexport enum CALLING_CLIENT_EVENT_KEYS {\n ERROR = 'callingClient:error',\n OUTGOING_CALL = 'callingClient:outgoing_call',\n USER_SESSION_INFO = 'callingClient:user_recent_sessions',\n ALL_CALLS_CLEARED = 'callingClient:all_calls_cleared',\n}\n\nexport enum CALL_EVENT_KEYS {\n ALERTING = 'alerting',\n CALL_ERROR = 'call_error',\n CALLER_ID = 'caller_id',\n CONNECT = 'connect',\n DISCONNECT = 'disconnect',\n ESTABLISHED = 'established',\n HELD = 'held',\n HOLD_ERROR = 'hold_error',\n PROGRESS = 'progress',\n REMOTE_MEDIA = 'remote_media',\n RESUME_ERROR = 'resume_error',\n RESUMED = 'resumed',\n TRANSFER_ERROR = 'transfer_error',\n}\n\nexport enum SUPPLEMENTARY_SERVICES {\n HOLD = 'hold',\n RESUME = 'resume',\n DIVERT = 'divert',\n TRANSFER = 'transfer',\n PARK = 'park',\n}\n\nexport enum MOBIUS_MIDCALL_STATE {\n HELD = 'HELD',\n CONNECTED = 'CONNECTED',\n}\n\nexport enum Disposition {\n ANSWERED = 'Answered',\n CANCELED = 'Canceled',\n INITIATED = 'Initiated',\n MISSED = 'MISSED',\n}\n\nexport type CallRecordLink = {\n locusUrl?: string;\n conversationUrl?: string;\n callbackAddress: string;\n};\n\nexport type CallBackInfo = {\n callbackAddress: string;\n callbackType: string;\n};\n\nexport type LookUpInfo = {\n lookupLink: string;\n type: string;\n};\n\nexport type CallRecordSelf = {\n id: string;\n name?: string;\n phoneNumber?: string;\n cucmDN?: string;\n ucmLineNumber?: number;\n};\n\nexport type CallRecordListOther = {\n ownerId?: string;\n id: string;\n name?: string;\n sipUrl?: string;\n primaryDisplayString?: string;\n secondaryDisplayString?: string;\n isPrivate: boolean;\n callbackAddress: string;\n phoneNumber?: string;\n contact?: string;\n email?: string;\n};\n\nexport type RedirectionDetails = {\n phoneNumber?: string;\n sipUrl?: string;\n name?: string;\n reason: string;\n userId?: string;\n isPrivate: boolean;\n};\n\nexport enum SessionType {\n SPARK = 'SPARK',\n WEBEX_CALLING = 'WEBEXCALLING',\n}\n\nexport type UserSession = {\n id: string;\n sessionId: string;\n disposition: Disposition;\n startTime: string;\n endTime: string;\n url: string;\n durationSeconds: number;\n joinedDurationSeconds: number;\n participantCount: number;\n isDeleted: boolean;\n isPMR: boolean;\n correlationIds: string[];\n links: CallRecordLink;\n self: CallRecordSelf;\n durationSecs: number;\n other: CallRecordListOther;\n sessionType: SessionType;\n direction: string;\n callingSpecifics?: {\n redirectionDetails: RedirectionDetails;\n };\n};\n\nexport type CallingParty = {\n name?: string;\n number?: string;\n privacyEnabled?: boolean;\n userId?: string;\n address?: string;\n};\n\nexport type Item = {\n id?: string;\n duration?: number;\n callingParty?: CallingParty;\n urgent?: boolean;\n confidential?: boolean;\n read?: boolean;\n created?: string;\n messageId?: string;\n time?: number;\n};\n\nexport enum MOBIUS_EVENT_KEYS {\n SERVER_EVENT_INCLUSIVE = 'event:mobius',\n CALL_SESSION_EVENT_INCLUSIVE = 'event:janus.user_recent_sessions',\n CALL_SESSION_EVENT_LEGACY = 'event:janus.user_sessions',\n CALL_SESSION_EVENT_VIEWED = 'event:janus.user_viewed_sessions',\n}\n\nexport type CallSessionData = {\n userSessions: {\n userSessions: UserSession[];\n statusCode: number;\n };\n eventType:\n | MOBIUS_EVENT_KEYS.CALL_SESSION_EVENT_INCLUSIVE\n | MOBIUS_EVENT_KEYS.CALL_SESSION_EVENT_LEGACY;\n};\n\nexport type CallSessionEvent = {\n id: string;\n data: CallSessionData;\n timestamp: number;\n trackingId: string;\n};\n\nexport enum MEDIA_CONNECTION_EVENT_KEYS {\n ROAP_MESSAGE_TO_SEND = 'roap:messageToSend',\n MEDIA_TYPE_AUDIO = 'audio',\n}\n\nexport type CallerIdDisplay = {\n correlationId: string;\n callerId: DisplayInformation;\n};\n\nexport type LineEventTypes = {\n [LINE_EVENTS.CONNECTING]: () => void;\n [LINE_EVENTS.ERROR]: (error: LineError) => void;\n [LINE_EVENTS.RECONNECTED]: () => void;\n [LINE_EVENTS.RECONNECTING]: () => void;\n [LINE_EVENTS.REGISTERED]: (lineInfo: ILine) => void;\n [LINE_EVENTS.UNREGISTERED]: () => void;\n [LINE_EVENTS.INCOMING_CALL]: (callObj: ICall) => void;\n};\n\nexport type CallEventTypes = {\n [CALL_EVENT_KEYS.ALERTING]: (callId: CallId) => void;\n [CALL_EVENT_KEYS.CALL_ERROR]: (error: CallError) => void;\n [CALL_EVENT_KEYS.CALLER_ID]: (display: CallerIdDisplay) => void;\n [CALL_EVENT_KEYS.CONNECT]: (callId: CallId) => void;\n [CALL_EVENT_KEYS.DISCONNECT]: (callId: CallId) => void;\n [CALL_EVENT_KEYS.ESTABLISHED]: (callId: CallId) => void;\n [CALL_EVENT_KEYS.HELD]: (callId: CallId) => void;\n [CALL_EVENT_KEYS.HOLD_ERROR]: (error: CallError) => void;\n [LINE_EVENT_KEYS.INCOMING_CALL]: (callObj: ICall) => void;\n [CALL_EVENT_KEYS.PROGRESS]: (callId: CallId) => void;\n [CALL_EVENT_KEYS.REMOTE_MEDIA]: (track: MediaStreamTrack) => void;\n [CALL_EVENT_KEYS.RESUME_ERROR]: (error: CallError) => void;\n [CALL_EVENT_KEYS.RESUMED]: (callId: CallId) => void;\n [CALL_EVENT_KEYS.TRANSFER_ERROR]: (error: CallError) => void;\n [CALLING_CLIENT_EVENT_KEYS.ALL_CALLS_CLEARED]: () => void;\n};\n\nexport type MessageId = {\n messageId: string;\n};\n\nexport type VoicemailEventTypes = {\n [COMMON_EVENT_KEYS.CB_VOICEMESSAGE_CONTENT_GET]: (messageId: MessageId) => void;\n};\n\nexport type CallingClientEventTypes = {\n [CALLING_CLIENT_EVENT_KEYS.ERROR]: (error: CallingClientError) => void;\n [CALLING_CLIENT_EVENT_KEYS.USER_SESSION_INFO]: (event: CallSessionEvent) => void;\n [CALLING_CLIENT_EVENT_KEYS.OUTGOING_CALL]: (callId: string) => void;\n [CALLING_CLIENT_EVENT_KEYS.ALL_CALLS_CLEARED]: () => void;\n};\n\nexport type CallHistoryEventTypes = {\n [COMMON_EVENT_KEYS.CALL_HISTORY_USER_SESSION_INFO]: (event: CallSessionEvent) => void;\n [COMMON_EVENT_KEYS.CALL_HISTORY_USER_VIEWED_SESSIONS]: (event: CallSessionViewedEvent) => void;\n};\n/* External Eventing End */\n\n/** Internal Eventing Start */\nenum CALL_STATE {\n HELD = 'held',\n REMOTE_HELD = 'remoteheld',\n CONNECTED = 'connected',\n}\n\ntype eventType = string;\n\ntype callProgressData = {\n alerting: boolean;\n inbandROAP: boolean;\n};\n\nexport type CallerIdInfo = {\n 'x-broadworks-remote-party-info'?: string;\n 'p-asserted-identity'?: string;\n from?: string;\n};\n\ntype callId = string;\ntype deviceId = string;\ntype correlationId = string;\ntype callUrl = string;\ntype causecode = number;\ntype cause = string;\n\ntype eventData = {\n callerId: CallerIdInfo;\n callState: CALL_STATE;\n};\n\ntype midCallServiceData = {\n eventType: eventType;\n eventData: eventData;\n};\n\ntype midCallService = Array<midCallServiceData>;\ninterface BaseMessage {\n eventType: eventType;\n correlationId: correlationId;\n deviceId: deviceId;\n callId: callId;\n callUrl: callUrl;\n}\nexport interface CallSetupMessage extends BaseMessage {\n callerId: CallerIdInfo;\n trackingId: string;\n alertType: string;\n}\ninterface CallProgressMessage extends BaseMessage {\n callProgressData: callProgressData;\n callerId: CallerIdInfo;\n}\n\nexport const WEBSOCKET_SCOPE = 'mobius';\n\nexport enum WEBSOCKET_KEYS {\n CALL_PROGRESS = 'callprogress',\n CALL_CONNECTED = 'callconnected',\n CALL_DISCONNECTED = 'callconnected',\n CALL_INFO = 'callinfo',\n CALL = 'call',\n ROAP = 'ROAP',\n}\n/** Internal Eventing End */\n\n/** State Machine Events */\n\nexport type CallEvent =\n /* Received Events */\n | {type: 'E_RECV_CALL_SETUP'; data?: unknown}\n | {type: 'E_RECV_CALL_PROGRESS'; data?: unknown}\n | {type: 'E_RECV_CALL_CONNECT'; data?: unknown}\n | {type: 'E_RECV_CALL_DISCONNECT'; data?: unknown}\n\n /* Sent Events */\n | {type: 'E_SEND_CALL_SETUP'; data?: unknown}\n | {type: 'E_SEND_CALL_ALERTING'; data?: unknown}\n | {type: 'E_SEND_CALL_CONNECT'; data?: unknown}\n | {type: 'E_SEND_CALL_DISCONNECT'; data?: unknown}\n\n /* Common Events */\n | {type: 'E_CALL_ESTABLISHED'; data?: unknown}\n | {type: 'E_CALL_INFO'; data?: unknown}\n | {type: 'E_UNKNOWN'; data?: unknown}\n | {type: 'E_CALL_CLEARED'; data?: unknown}\n | {type: 'E_CALL_HOLD'; data?: unknown}\n | {type: 'E_CALL_RESUME'; data?: unknown};\n\n/* ROAP Events */\nexport type RoapEvent =\n | {type: 'E_SEND_ROAP_OFFER'; data?: unknown}\n | {type: 'E_SEND_ROAP_ANSWER'; data?: unknown}\n | {type: 'E_RECV_ROAP_OFFER'; data?: unknown}\n | {type: 'E_RECV_ROAP_ANSWER'; data?: unknown}\n | {type: 'E_ROAP_ERROR'; data?: unknown}\n | {type: 'E_ROAP_OK'; data?: unknown}\n | {type: 'E_RECV_ROAP_OFFER_REQUEST'; data?: unknown} // ROAP request to explicitly ask Client to do OFFER\n | {type: 'E_ROAP_TEARDOWN'; data?: unknown};\n\n// TODO: export RoapMessage type from the media SDK to use here\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport interface RoapMessage {\n seq: number;\n messageType: 'OFFER' | 'ANSWER' | 'OK' | 'ERROR' | 'OFFER_REQUEST';\n offererSessionId?: string;\n answererSessionId?: string;\n sdp?: string;\n version?: string;\n tieBreaker?: string;\n errorType?: string;\n}\n\nexport type UserReadSessions = {\n sessionId: string;\n};\n\nexport type CallSessionViewedData = {\n userReadSessions: {\n userReadSessions: UserReadSessions[];\n statusCode: number;\n };\n eventType: MOBIUS_EVENT_KEYS.CALL_SESSION_EVENT_VIEWED;\n};\n\nexport type CallSessionViewedEvent = {\n id: string;\n data: CallSessionViewedData;\n timestamp: number;\n trackingId: string;\n};\n\nexport type EndTimeSessionId = {\n endTime: string;\n sessionId: string;\n};\n\nexport type SanitizedEndTimeAndSessionId = {\n endTime: number;\n sessionId: string;\n};\n\nexport type UCMLine = {\n dnorpattern: string;\n index: number;\n label: string | null;\n};\n\nexport type UCMDevice = {\n name: string;\n model: number;\n lines: UCMLine[];\n};\n\nexport type UCMLinesApiResponse = {\n devices: UCMDevice[];\n};\n"],"mappings":";;;;;;;AAEA,IAAAA,MAAA,GAAAC,OAAA;AAFA;AAAuD;AAOvD;AAAA,IACYC,iBAAiB,GAAAC,OAAA,CAAAD,iBAAA,0BAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAA,OAAjBA,iBAAiB;AAAA;AAAA,IAMjBE,eAAe,GAAAD,OAAA,CAAAC,eAAA,0BAAfA,eAAe;EAAfA,eAAe;EAAA,OAAfA,eAAe;AAAA;AAAA,IAIfC,yBAAyB,GAAAF,OAAA,CAAAE,yBAAA,0BAAzBA,yBAAyB;EAAzBA,yBAAyB;EAAzBA,yBAAyB;EAAzBA,yBAAyB;EAAzBA,yBAAyB;EAAA,OAAzBA,yBAAyB;AAAA;AAAA,IAOzBC,eAAe,GAAAH,OAAA,CAAAG,eAAA,0BAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAA,OAAfA,eAAe;AAAA;AAAA,IAgBfC,sBAAsB,GAAAJ,OAAA,CAAAI,sBAAA,0BAAtBA,sBAAsB;EAAtBA,sBAAsB;EAAtBA,sBAAsB;EAAtBA,sBAAsB;EAAtBA,sBAAsB;EAAtBA,sBAAsB;EAAA,OAAtBA,sBAAsB;AAAA;AAAA,IAQtBC,oBAAoB,GAAAL,OAAA,CAAAK,oBAAA,0BAApBA,oBAAoB;EAApBA,oBAAoB;EAApBA,oBAAoB;EAAA,OAApBA,oBAAoB;AAAA;AAAA,IAKpBC,WAAW,GAAAN,OAAA,CAAAM,WAAA,0BAAXA,WAAW;EAAXA,WAAW;EAAXA,WAAW;EAAXA,WAAW;EAAXA,WAAW;EAAA,OAAXA,WAAW;AAAA;AAAA,IAsDXC,WAAW,GAAAP,OAAA,CAAAO,WAAA,0BAAXA,WAAW;EAAXA,WAAW;EAAXA,WAAW;EAAA,OAAXA,WAAW;AAAA;AAAA,IAiDXC,iBAAiB,GAAAR,OAAA,CAAAQ,iBAAA,0BAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAA,OAAjBA,iBAAiB;AAAA;AAAA,IAwBjBC,2BAA2B,GAAAT,OAAA,CAAAS,2BAAA,0BAA3BA,2BAA2B;EAA3BA,2BAA2B;EAA3BA,2BAA2B;EAAA,OAA3BA,2BAA2B;AAAA;AAyDvC;AAEA;AAAA,IACKC,UAAU,0BAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAA,OAAVA,UAAU;AAAA,EAAVA,UAAU;AAsDR,IAAMC,eAAe,GAAAX,OAAA,CAAAW,eAAA,GAAG,QAAQ;AAAC,IAE5BC,cAAc,GAAAZ,OAAA,CAAAY,cAAA,0BAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAdA,cAAc;EAAA,OAAdA,cAAc;AAAA;AAQ1B;AAEA;AAuBA;AAWA;AACA"}
@@ -274,7 +274,7 @@ var MetricManager = /*#__PURE__*/function () {
274
274
  },
275
275
  fields: {
276
276
  device_url: (_this$deviceInfo20 = this.deviceInfo) === null || _this$deviceInfo20 === void 0 ? void 0 : (_this$deviceInfo20$de = _this$deviceInfo20.device) === null || _this$deviceInfo20$de === void 0 ? void 0 : _this$deviceInfo20$de.clientDeviceUri,
277
- calling_sdk_version: process.env.CALLING_SDK_VERSION || _constants.VERSION
277
+ calling_sdk_version: typeof process !== 'undefined' && process.env.CALLING_SDK_VERSION ? process.env.CALLING_SDK_VERSION : _constants.VERSION
278
278
  },
279
279
  type: type
280
280
  };
@@ -293,7 +293,7 @@ var MetricManager = /*#__PURE__*/function () {
293
293
  },
294
294
  fields: {
295
295
  device_url: (_this$deviceInfo22 = this.deviceInfo) === null || _this$deviceInfo22 === void 0 ? void 0 : (_this$deviceInfo22$de = _this$deviceInfo22.device) === null || _this$deviceInfo22$de === void 0 ? void 0 : _this$deviceInfo22$de.clientDeviceUri,
296
- calling_sdk_version: process.env.CALLING_SDK_VERSION || _constants.VERSION
296
+ calling_sdk_version: typeof process !== 'undefined' && process.env.CALLING_SDK_VERSION ? process.env.CALLING_SDK_VERSION : _constants.VERSION
297
297
  },
298
298
  type: type
299
299
  };
@@ -1 +1 @@
1
- {"version":3,"names":["_constants","require","_types","_Logger","_interopRequireDefault","metricManager","MetricManager","webex","indicator","_classCallCheck2","default","_defineProperty2","log","info","file","METRIC_FILE","serviceIndicator","_createClass2","key","value","setDeviceInfo","deviceInfo","submitRegistrationMetric","name","metricAction","type","clientError","data","METRIC_EVENT","REGISTRATION","_this$deviceInfo","_this$deviceInfo$devi","_this$deviceInfo2","_this$deviceInfo2$dev","_this$deviceInfo3","_this$deviceInfo3$dev","tags","action","device_id","device","deviceId","service_indicator","fields","device_url","clientDeviceUri","mobius_url","uri","calling_sdk_version","process","env","CALLING_SDK_VERSION","VERSION","REGISTRATION_ERROR","_this$deviceInfo4","_this$deviceInfo4$dev","_this$deviceInfo5","_this$deviceInfo5$dev","_this$deviceInfo6","_this$deviceInfo6$dev","error","getError","message","error_type","warn","method","internal","metrics","submitClientMetrics","submitCallMetric","callId","correlationId","callError","CALL","_this$deviceInfo7","_this$deviceInfo7$dev","_this$deviceInfo8","_this$deviceInfo8$dev","_this$deviceInfo9","_this$deviceInfo9$dev","call_id","correlation_id","CALL_ERROR","_this$deviceInfo10","_this$deviceInfo10$de","_this$deviceInfo11","_this$deviceInfo11$de","_this$deviceInfo12","_this$deviceInfo12$de","getCallError","submitMediaMetric","localSdp","remoteSdp","MEDIA","_this$deviceInfo13","_this$deviceInfo13$de","_this$deviceInfo14","_this$deviceInfo14$de","_this$deviceInfo15","_this$deviceInfo15$de","local_media_details","remote_media_details","MEDIA_ERROR","_this$deviceInfo16","_this$deviceInfo16$de","_this$deviceInfo17","_this$deviceInfo17$de","_this$deviceInfo18","_this$deviceInfo18$de","submitVoicemailMetric","messageId","voicemailError","statusCode","VOICEMAIL","_this$deviceInfo19","_this$deviceInfo19$de","_this$deviceInfo20","_this$deviceInfo20$de","message_id","VOICEMAIL_ERROR","_this$deviceInfo21","_this$deviceInfo21$de","_this$deviceInfo22","_this$deviceInfo22$de","status_code","submitBNRMetric","BNR_ENABLED","BNR_DISABLED","_this$deviceInfo23","_this$deviceInfo23$de","_this$deviceInfo24","_this$deviceInfo24$de","_this$deviceInfo25","_this$deviceInfo25$de","getMetricManager","exports","_default"],"sources":["index.ts"],"sourcesContent":["import {CallError, CallingClientError} from '../Errors';\nimport {METRIC_FILE, VERSION} from '../CallingClient/constants';\nimport {CallId, CorrelationId, IDeviceInfo, ServiceIndicator} from '../common/types';\nimport {WebexSDK} from '../SDKConnector/types';\nimport {REG_ACTION, IMetricManager, METRIC_TYPE, METRIC_EVENT} from './types';\nimport {LineError} from '../Errors/catalog/LineError';\nimport log from '../Logger';\n\nlet metricManager: IMetricManager;\n\n/**\n *\n */\nclass MetricManager implements IMetricManager {\n private webex: WebexSDK;\n\n private deviceInfo?: IDeviceInfo;\n\n private serviceIndicator?: ServiceIndicator;\n\n /**\n * @param webex - Webex object used to send metrics.\n * @param indicator - Service Indicator.\n */\n public constructor(webex: WebexSDK, indicator?: ServiceIndicator) {\n log.info('Initializing metric manager...', {file: METRIC_FILE});\n this.webex = webex;\n this.serviceIndicator = indicator;\n }\n\n /**\n * @param deviceInfo - DeviceInfo object.\n */\n public setDeviceInfo(deviceInfo: IDeviceInfo) {\n this.deviceInfo = deviceInfo;\n }\n\n /**\n * @param name - Name of the metric being submitted.\n * @param metricAction - Type of action sent in the metric.\n * @param type - Type of metric.\n * @param clientError - Error object used to populate error details in metric.\n */\n public submitRegistrationMetric(\n name: METRIC_EVENT,\n metricAction: REG_ACTION,\n type: METRIC_TYPE,\n clientError: LineError | CallingClientError | undefined\n ) {\n let data;\n\n switch (name) {\n case METRIC_EVENT.REGISTRATION: {\n data = {\n tags: {\n action: metricAction,\n device_id: this.deviceInfo?.device?.deviceId,\n service_indicator: this.serviceIndicator,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n mobius_url: this.deviceInfo?.device?.uri,\n calling_sdk_version: process.env.CALLING_SDK_VERSION || VERSION,\n },\n type,\n };\n break;\n }\n\n case METRIC_EVENT.REGISTRATION_ERROR: {\n if (clientError) {\n data = {\n tags: {\n action: metricAction,\n device_id: this.deviceInfo?.device?.deviceId,\n service_indicator: this.serviceIndicator,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n mobius_url: this.deviceInfo?.device?.uri,\n calling_sdk_version: process.env.CALLING_SDK_VERSION || VERSION,\n error: clientError.getError().message,\n error_type: clientError.getError().type,\n },\n type,\n };\n }\n break;\n }\n\n default:\n log.warn('Invalid metric name received. Rejecting request to submit metric.', {\n file: METRIC_FILE,\n method: this.submitRegistrationMetric.name,\n });\n break;\n }\n\n if (data) {\n this.webex.internal.metrics.submitClientMetrics(name, data);\n }\n }\n\n /**\n * @param name - Name of the metric being submitted.\n * @param metricAction - Type of action sent in the metric.\n * @param type - Type of metric.\n * @param callId - Call ID of the call sending the metric.\n * @param correlationId - Correlation ID of the call sending the metric.\n * @param callError - Error object used to populate error details in metric.\n */\n public submitCallMetric(\n name: METRIC_EVENT,\n metricAction: string,\n type: METRIC_TYPE,\n callId: CallId,\n correlationId: CorrelationId,\n callError?: CallError\n ) {\n let data;\n\n switch (name) {\n case METRIC_EVENT.CALL: {\n data = {\n tags: {\n action: metricAction,\n device_id: this.deviceInfo?.device?.deviceId,\n service_indicator: this.serviceIndicator,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n mobius_url: this.deviceInfo?.device?.uri,\n calling_sdk_version: process.env.CALLING_SDK_VERSION || VERSION,\n call_id: callId,\n correlation_id: correlationId,\n },\n type,\n };\n break;\n }\n\n case METRIC_EVENT.CALL_ERROR: {\n if (callError) {\n data = {\n tags: {\n action: metricAction,\n device_id: this.deviceInfo?.device?.deviceId,\n service_indicator: this.serviceIndicator,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n mobius_url: this.deviceInfo?.device?.uri,\n calling_sdk_version: process.env.CALLING_SDK_VERSION || VERSION,\n call_id: callId,\n correlation_id: correlationId,\n error: callError.getCallError().message,\n error_type: callError.getCallError().type,\n },\n type,\n };\n }\n break;\n }\n\n default:\n log.warn('Invalid metric name received. Rejecting request to submit metric.', {\n file: METRIC_FILE,\n method: this.submitCallMetric.name,\n });\n break;\n }\n\n if (data) {\n this.webex.internal.metrics.submitClientMetrics(name, data);\n }\n }\n\n /**\n * @param name - Name of the metric being submitted.\n * @param metricAction - Type of action sent in the metric.\n * @param type - Type of metric.\n * @param callId - Call ID of the call sending the metric.\n * @param correlationId - Correlation ID of the call sending the metric.\n * @param localSdp - Local SDP information for media metric.\n * @param remoteSdp - Remote SDP information for media metric.\n * @param callError - Error object used to populate error details in metric.\n */\n public submitMediaMetric(\n name: METRIC_EVENT,\n metricAction: string,\n type: METRIC_TYPE,\n callId: CallId,\n correlationId: CorrelationId,\n localSdp?: string,\n remoteSdp?: string,\n callError?: CallError\n ) {\n let data;\n\n switch (name) {\n case METRIC_EVENT.MEDIA: {\n data = {\n tags: {\n action: metricAction,\n device_id: this.deviceInfo?.device?.deviceId,\n service_indicator: this.serviceIndicator,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n mobius_url: this.deviceInfo?.device?.uri,\n calling_sdk_version: process.env.CALLING_SDK_VERSION || VERSION,\n call_id: callId,\n correlation_id: correlationId,\n local_media_details: localSdp,\n remote_media_details: remoteSdp,\n },\n type,\n };\n break;\n }\n\n case METRIC_EVENT.MEDIA_ERROR: {\n if (callError) {\n data = {\n tags: {\n action: metricAction,\n device_id: this.deviceInfo?.device?.deviceId,\n service_indicator: this.serviceIndicator,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n mobius_url: this.deviceInfo?.device?.uri,\n calling_sdk_version: process.env.CALLING_SDK_VERSION || VERSION,\n call_id: callId,\n correlation_id: correlationId,\n local_media_details: localSdp,\n remote_media_details: remoteSdp,\n error: callError.getCallError().message,\n error_type: callError.getCallError().type,\n },\n type,\n };\n }\n break;\n }\n\n default:\n log.warn('Invalid metric name received. Rejecting request to submit metric.', {\n file: METRIC_FILE,\n method: this.submitMediaMetric.name,\n });\n break;\n }\n\n if (data) {\n this.webex.internal.metrics.submitClientMetrics(name, data);\n }\n }\n\n /**\n * @param name - Name of the metric being submitted.\n * @param metricAction - Type of action sent in the metric.\n * @param type - Type of metric.\n * @param messageId - Message identifier of a Voicemail message.\n * @param voicemailError - Error string used to populate error details in metric.\n * @param statusCode - Status code used to populate error details in metric.\n */\n public submitVoicemailMetric(\n name: METRIC_EVENT,\n metricAction: string,\n type: METRIC_TYPE,\n messageId?: string,\n voicemailError?: string,\n statusCode?: number\n ) {\n let data;\n\n switch (name) {\n case METRIC_EVENT.VOICEMAIL: {\n data = {\n tags: {\n action: metricAction,\n device_id: this.deviceInfo?.device?.deviceId,\n message_id: messageId,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n calling_sdk_version: process.env.CALLING_SDK_VERSION || VERSION,\n },\n type,\n };\n break;\n }\n\n case METRIC_EVENT.VOICEMAIL_ERROR: {\n data = {\n tags: {\n action: metricAction,\n device_id: this.deviceInfo?.device?.deviceId,\n message_id: messageId,\n error: voicemailError,\n status_code: statusCode,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n calling_sdk_version: process.env.CALLING_SDK_VERSION || VERSION,\n },\n type,\n };\n break;\n }\n\n default:\n log.warn('Invalid metric name received. Rejecting request to submit metric.', {\n file: METRIC_FILE,\n method: this.submitVoicemailMetric.name,\n });\n break;\n }\n if (data) {\n this.webex.internal.metrics.submitClientMetrics(name, data);\n }\n }\n\n public submitBNRMetric(\n name: METRIC_EVENT,\n type: METRIC_TYPE,\n callId: CallId,\n correlationId: CorrelationId\n ) {\n let data;\n\n if (name === METRIC_EVENT.BNR_ENABLED || name === METRIC_EVENT.BNR_DISABLED) {\n data = {\n tags: {\n device_id: this.deviceInfo?.device?.deviceId,\n service_indicator: this.serviceIndicator,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n mobius_url: this.deviceInfo?.device?.uri,\n calling_sdk_version: process.env.CALLING_SDK_VERSION || VERSION,\n call_id: callId,\n correlation_id: correlationId,\n },\n type,\n };\n } else {\n log.warn('Invalid metric name received. Rejecting request to submit metric.', {\n file: METRIC_FILE,\n method: this.submitBNRMetric.name,\n });\n }\n\n if (data) {\n this.webex.internal.metrics.submitClientMetrics(name, data);\n }\n }\n}\n\n/**\n * @param webex - Webex object to communicate with metrics microservice.\n * @param indicator - Service Indicator.\n */\nexport const getMetricManager = (webex: WebexSDK, indicator?: ServiceIndicator): IMetricManager => {\n if (!metricManager) {\n metricManager = new MetricManager(webex, indicator);\n }\n\n return metricManager;\n};\n\nexport default getMetricManager;\n"],"mappings":"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"}
1
+ {"version":3,"names":["_constants","require","_types","_Logger","_interopRequireDefault","metricManager","MetricManager","webex","indicator","_classCallCheck2","default","_defineProperty2","log","info","file","METRIC_FILE","serviceIndicator","_createClass2","key","value","setDeviceInfo","deviceInfo","submitRegistrationMetric","name","metricAction","type","clientError","data","METRIC_EVENT","REGISTRATION","_this$deviceInfo","_this$deviceInfo$devi","_this$deviceInfo2","_this$deviceInfo2$dev","_this$deviceInfo3","_this$deviceInfo3$dev","tags","action","device_id","device","deviceId","service_indicator","fields","device_url","clientDeviceUri","mobius_url","uri","calling_sdk_version","process","env","CALLING_SDK_VERSION","VERSION","REGISTRATION_ERROR","_this$deviceInfo4","_this$deviceInfo4$dev","_this$deviceInfo5","_this$deviceInfo5$dev","_this$deviceInfo6","_this$deviceInfo6$dev","error","getError","message","error_type","warn","method","internal","metrics","submitClientMetrics","submitCallMetric","callId","correlationId","callError","CALL","_this$deviceInfo7","_this$deviceInfo7$dev","_this$deviceInfo8","_this$deviceInfo8$dev","_this$deviceInfo9","_this$deviceInfo9$dev","call_id","correlation_id","CALL_ERROR","_this$deviceInfo10","_this$deviceInfo10$de","_this$deviceInfo11","_this$deviceInfo11$de","_this$deviceInfo12","_this$deviceInfo12$de","getCallError","submitMediaMetric","localSdp","remoteSdp","MEDIA","_this$deviceInfo13","_this$deviceInfo13$de","_this$deviceInfo14","_this$deviceInfo14$de","_this$deviceInfo15","_this$deviceInfo15$de","local_media_details","remote_media_details","MEDIA_ERROR","_this$deviceInfo16","_this$deviceInfo16$de","_this$deviceInfo17","_this$deviceInfo17$de","_this$deviceInfo18","_this$deviceInfo18$de","submitVoicemailMetric","messageId","voicemailError","statusCode","VOICEMAIL","_this$deviceInfo19","_this$deviceInfo19$de","_this$deviceInfo20","_this$deviceInfo20$de","message_id","VOICEMAIL_ERROR","_this$deviceInfo21","_this$deviceInfo21$de","_this$deviceInfo22","_this$deviceInfo22$de","status_code","submitBNRMetric","BNR_ENABLED","BNR_DISABLED","_this$deviceInfo23","_this$deviceInfo23$de","_this$deviceInfo24","_this$deviceInfo24$de","_this$deviceInfo25","_this$deviceInfo25$de","getMetricManager","exports","_default"],"sources":["index.ts"],"sourcesContent":["import {CallError, CallingClientError} from '../Errors';\nimport {METRIC_FILE, VERSION} from '../CallingClient/constants';\nimport {CallId, CorrelationId, IDeviceInfo, ServiceIndicator} from '../common/types';\nimport {WebexSDK} from '../SDKConnector/types';\nimport {REG_ACTION, IMetricManager, METRIC_TYPE, METRIC_EVENT} from './types';\nimport {LineError} from '../Errors/catalog/LineError';\nimport log from '../Logger';\n\nlet metricManager: IMetricManager;\n\n/**\n *\n */\nclass MetricManager implements IMetricManager {\n private webex: WebexSDK;\n\n private deviceInfo?: IDeviceInfo;\n\n private serviceIndicator?: ServiceIndicator;\n\n /**\n * @param webex - Webex object used to send metrics.\n * @param indicator - Service Indicator.\n */\n public constructor(webex: WebexSDK, indicator?: ServiceIndicator) {\n log.info('Initializing metric manager...', {file: METRIC_FILE});\n this.webex = webex;\n this.serviceIndicator = indicator;\n }\n\n /**\n * @param deviceInfo - DeviceInfo object.\n */\n public setDeviceInfo(deviceInfo: IDeviceInfo) {\n this.deviceInfo = deviceInfo;\n }\n\n /**\n * @param name - Name of the metric being submitted.\n * @param metricAction - Type of action sent in the metric.\n * @param type - Type of metric.\n * @param clientError - Error object used to populate error details in metric.\n */\n public submitRegistrationMetric(\n name: METRIC_EVENT,\n metricAction: REG_ACTION,\n type: METRIC_TYPE,\n clientError: LineError | CallingClientError | undefined\n ) {\n let data;\n\n switch (name) {\n case METRIC_EVENT.REGISTRATION: {\n data = {\n tags: {\n action: metricAction,\n device_id: this.deviceInfo?.device?.deviceId,\n service_indicator: this.serviceIndicator,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n mobius_url: this.deviceInfo?.device?.uri,\n calling_sdk_version: process.env.CALLING_SDK_VERSION || VERSION,\n },\n type,\n };\n break;\n }\n\n case METRIC_EVENT.REGISTRATION_ERROR: {\n if (clientError) {\n data = {\n tags: {\n action: metricAction,\n device_id: this.deviceInfo?.device?.deviceId,\n service_indicator: this.serviceIndicator,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n mobius_url: this.deviceInfo?.device?.uri,\n calling_sdk_version: process.env.CALLING_SDK_VERSION || VERSION,\n error: clientError.getError().message,\n error_type: clientError.getError().type,\n },\n type,\n };\n }\n break;\n }\n\n default:\n log.warn('Invalid metric name received. Rejecting request to submit metric.', {\n file: METRIC_FILE,\n method: this.submitRegistrationMetric.name,\n });\n break;\n }\n\n if (data) {\n this.webex.internal.metrics.submitClientMetrics(name, data);\n }\n }\n\n /**\n * @param name - Name of the metric being submitted.\n * @param metricAction - Type of action sent in the metric.\n * @param type - Type of metric.\n * @param callId - Call ID of the call sending the metric.\n * @param correlationId - Correlation ID of the call sending the metric.\n * @param callError - Error object used to populate error details in metric.\n */\n public submitCallMetric(\n name: METRIC_EVENT,\n metricAction: string,\n type: METRIC_TYPE,\n callId: CallId,\n correlationId: CorrelationId,\n callError?: CallError\n ) {\n let data;\n\n switch (name) {\n case METRIC_EVENT.CALL: {\n data = {\n tags: {\n action: metricAction,\n device_id: this.deviceInfo?.device?.deviceId,\n service_indicator: this.serviceIndicator,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n mobius_url: this.deviceInfo?.device?.uri,\n calling_sdk_version: process.env.CALLING_SDK_VERSION || VERSION,\n call_id: callId,\n correlation_id: correlationId,\n },\n type,\n };\n break;\n }\n\n case METRIC_EVENT.CALL_ERROR: {\n if (callError) {\n data = {\n tags: {\n action: metricAction,\n device_id: this.deviceInfo?.device?.deviceId,\n service_indicator: this.serviceIndicator,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n mobius_url: this.deviceInfo?.device?.uri,\n calling_sdk_version: process.env.CALLING_SDK_VERSION || VERSION,\n call_id: callId,\n correlation_id: correlationId,\n error: callError.getCallError().message,\n error_type: callError.getCallError().type,\n },\n type,\n };\n }\n break;\n }\n\n default:\n log.warn('Invalid metric name received. Rejecting request to submit metric.', {\n file: METRIC_FILE,\n method: this.submitCallMetric.name,\n });\n break;\n }\n\n if (data) {\n this.webex.internal.metrics.submitClientMetrics(name, data);\n }\n }\n\n /**\n * @param name - Name of the metric being submitted.\n * @param metricAction - Type of action sent in the metric.\n * @param type - Type of metric.\n * @param callId - Call ID of the call sending the metric.\n * @param correlationId - Correlation ID of the call sending the metric.\n * @param localSdp - Local SDP information for media metric.\n * @param remoteSdp - Remote SDP information for media metric.\n * @param callError - Error object used to populate error details in metric.\n */\n public submitMediaMetric(\n name: METRIC_EVENT,\n metricAction: string,\n type: METRIC_TYPE,\n callId: CallId,\n correlationId: CorrelationId,\n localSdp?: string,\n remoteSdp?: string,\n callError?: CallError\n ) {\n let data;\n\n switch (name) {\n case METRIC_EVENT.MEDIA: {\n data = {\n tags: {\n action: metricAction,\n device_id: this.deviceInfo?.device?.deviceId,\n service_indicator: this.serviceIndicator,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n mobius_url: this.deviceInfo?.device?.uri,\n calling_sdk_version: process.env.CALLING_SDK_VERSION || VERSION,\n call_id: callId,\n correlation_id: correlationId,\n local_media_details: localSdp,\n remote_media_details: remoteSdp,\n },\n type,\n };\n break;\n }\n\n case METRIC_EVENT.MEDIA_ERROR: {\n if (callError) {\n data = {\n tags: {\n action: metricAction,\n device_id: this.deviceInfo?.device?.deviceId,\n service_indicator: this.serviceIndicator,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n mobius_url: this.deviceInfo?.device?.uri,\n calling_sdk_version: process.env.CALLING_SDK_VERSION || VERSION,\n call_id: callId,\n correlation_id: correlationId,\n local_media_details: localSdp,\n remote_media_details: remoteSdp,\n error: callError.getCallError().message,\n error_type: callError.getCallError().type,\n },\n type,\n };\n }\n break;\n }\n\n default:\n log.warn('Invalid metric name received. Rejecting request to submit metric.', {\n file: METRIC_FILE,\n method: this.submitMediaMetric.name,\n });\n break;\n }\n\n if (data) {\n this.webex.internal.metrics.submitClientMetrics(name, data);\n }\n }\n\n /**\n * @param name - Name of the metric being submitted.\n * @param metricAction - Type of action sent in the metric.\n * @param type - Type of metric.\n * @param messageId - Message identifier of a Voicemail message.\n * @param voicemailError - Error string used to populate error details in metric.\n * @param statusCode - Status code used to populate error details in metric.\n */\n public submitVoicemailMetric(\n name: METRIC_EVENT,\n metricAction: string,\n type: METRIC_TYPE,\n messageId?: string,\n voicemailError?: string,\n statusCode?: number\n ) {\n let data;\n\n switch (name) {\n case METRIC_EVENT.VOICEMAIL: {\n data = {\n tags: {\n action: metricAction,\n device_id: this.deviceInfo?.device?.deviceId,\n message_id: messageId,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n calling_sdk_version:\n typeof process !== 'undefined' && process.env.CALLING_SDK_VERSION\n ? process.env.CALLING_SDK_VERSION\n : VERSION,\n },\n type,\n };\n break;\n }\n\n case METRIC_EVENT.VOICEMAIL_ERROR: {\n data = {\n tags: {\n action: metricAction,\n device_id: this.deviceInfo?.device?.deviceId,\n message_id: messageId,\n error: voicemailError,\n status_code: statusCode,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n calling_sdk_version:\n typeof process !== 'undefined' && process.env.CALLING_SDK_VERSION\n ? process.env.CALLING_SDK_VERSION\n : VERSION,\n },\n type,\n };\n break;\n }\n\n default:\n log.warn('Invalid metric name received. Rejecting request to submit metric.', {\n file: METRIC_FILE,\n method: this.submitVoicemailMetric.name,\n });\n break;\n }\n if (data) {\n this.webex.internal.metrics.submitClientMetrics(name, data);\n }\n }\n\n public submitBNRMetric(\n name: METRIC_EVENT,\n type: METRIC_TYPE,\n callId: CallId,\n correlationId: CorrelationId\n ) {\n let data;\n\n if (name === METRIC_EVENT.BNR_ENABLED || name === METRIC_EVENT.BNR_DISABLED) {\n data = {\n tags: {\n device_id: this.deviceInfo?.device?.deviceId,\n service_indicator: this.serviceIndicator,\n },\n fields: {\n device_url: this.deviceInfo?.device?.clientDeviceUri,\n mobius_url: this.deviceInfo?.device?.uri,\n calling_sdk_version: process.env.CALLING_SDK_VERSION || VERSION,\n call_id: callId,\n correlation_id: correlationId,\n },\n type,\n };\n } else {\n log.warn('Invalid metric name received. Rejecting request to submit metric.', {\n file: METRIC_FILE,\n method: this.submitBNRMetric.name,\n });\n }\n\n if (data) {\n this.webex.internal.metrics.submitClientMetrics(name, data);\n }\n }\n}\n\n/**\n * @param webex - Webex object to communicate with metrics microservice.\n * @param indicator - Service Indicator.\n */\nexport const getMetricManager = (webex: WebexSDK, indicator?: ServiceIndicator): IMetricManager => {\n if (!metricManager) {\n metricManager = new MetricManager(webex, indicator);\n }\n\n return metricManager;\n};\n\nexport default getMetricManager;\n"],"mappings":"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"}
@@ -858,13 +858,13 @@ function getXsiActionEndpoint(_x17, _x18, _x19) {
858
858
  */
859
859
  function _getXsiActionEndpoint() {
860
860
  _getXsiActionEndpoint = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee5(webex, loggerContext, callingBackend) {
861
- var userIdResponse, response, xsiEndpoint, bwTokenResponse, _response, _xsiEndpoint, errorInfo;
861
+ var userIdResponse, response, xsiEndpoint, bwTokenResponse, _response, _xsiEndpoint, xsiUrl, errorInfo;
862
862
  return _regenerator.default.wrap(function _callee5$(_context5) {
863
863
  while (1) switch (_context5.prev = _context5.next) {
864
864
  case 0:
865
865
  _context5.prev = 0;
866
866
  _context5.t0 = callingBackend;
867
- _context5.next = _context5.t0 === _types2.CALLING_BACKEND.WXC ? 4 : _context5.t0 === _types2.CALLING_BACKEND.BWRKS ? 10 : 17;
867
+ _context5.next = _context5.t0 === _types2.CALLING_BACKEND.WXC ? 4 : _context5.t0 === _types2.CALLING_BACKEND.BWRKS ? 10 : 18;
868
868
  break;
869
869
  case 4:
870
870
  _context5.next = 6;
@@ -887,26 +887,29 @@ function _getXsiActionEndpoint() {
887
887
  bwTokenResponse = _context5.sent;
888
888
  _response = bwTokenResponse.body;
889
889
  _xsiEndpoint = _response[_constants2.DEVICES][0][_constants2.SETTINGS][_constants2.BW_XSI_URL];
890
- if (_response[_constants2.DEVICES][0][_constants2.SETTINGS][_constants2.BW_XSI_URL].endsWith(_constants2.BW_XSI_ENDPOINT_VERSION)) {
891
- _xsiEndpoint = _response[_constants2.DEVICES][0][_constants2.SETTINGS][_constants2.BW_XSI_URL].slice(0, -5);
890
+ xsiUrl = _response[_constants2.DEVICES][0][_constants2.SETTINGS][_constants2.BW_XSI_URL]; // Check if it ends with specific version and slice accordingly
891
+ if (xsiUrl.endsWith(_constants2.BW_XSI_ENDPOINT_VERSION)) {
892
+ _xsiEndpoint = xsiUrl.slice(0, -5); // Remove 'v2.0'
893
+ } else if (xsiUrl.endsWith(_constants2.BW_XSI_ENDPOINT_VERSION_WITH_SLASH)) {
894
+ _xsiEndpoint = xsiUrl.slice(0, -6); // Remove 'v2.0/'
892
895
  }
893
896
  return _context5.abrupt("return", _xsiEndpoint);
894
- case 17:
895
- throw new Error('Calling backend is not identified, exiting....');
896
897
  case 18:
897
- _context5.next = 25;
898
+ throw new Error('Calling backend is not identified, exiting....');
899
+ case 19:
900
+ _context5.next = 26;
898
901
  break;
899
- case 20:
900
- _context5.prev = 20;
902
+ case 21:
903
+ _context5.prev = 21;
901
904
  _context5.t1 = _context5["catch"](0);
902
905
  errorInfo = _context5.t1;
903
906
  serviceErrorCodeHandler(errorInfo, loggerContext);
904
907
  return _context5.abrupt("return", errorInfo);
905
- case 25:
908
+ case 26:
906
909
  case "end":
907
910
  return _context5.stop();
908
911
  }
909
- }, _callee5, null, [[0, 20]]);
912
+ }, _callee5, null, [[0, 21]]);
910
913
  }));
911
914
  return _getXsiActionEndpoint.apply(this, arguments);
912
915
  }
@@ -959,7 +962,7 @@ function scimQuery(_x20) {
959
962
  */
960
963
  function _scimQuery() {
961
964
  _scimQuery = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee6(filter) {
962
- var sdkConnector, webex, scimUrl, query;
965
+ var sdkConnector, webex, isProd, webexHost, scimUrl, query;
963
966
  return _regenerator.default.wrap(function _callee6$(_context6) {
964
967
  while (1) switch (_context6.prev = _context6.next) {
965
968
  case 0:
@@ -969,14 +972,16 @@ function _scimQuery() {
969
972
  });
970
973
  sdkConnector = _SDKConnector.default;
971
974
  webex = sdkConnector.getWebex();
972
- scimUrl = "".concat(webex.internal.services._serviceUrls.identity, "/").concat(_constants2.IDENTITY_ENDPOINT_RESOURCE, "/").concat(_constants2.SCIM_ENDPOINT_RESOURCE, "/").concat(webex.internal.device.orgId, "/").concat(_constants2.SCIM_USER_FILTER);
975
+ isProd = !webex.internal.device.url.includes('-int');
976
+ webexHost = isProd ? _constants2.WEBEX_API_PROD : _constants2.WEBEX_API_BTS;
977
+ scimUrl = "".concat(webexHost, "/").concat(_constants2.IDENTITY_ENDPOINT_RESOURCE, "/").concat(_constants2.SCIM_ENDPOINT_RESOURCE, "/").concat(webex.internal.device.orgId, "/").concat(_constants2.SCIM_USER_FILTER);
973
978
  query = scimUrl + encodeURIComponent(filter);
974
979
  return _context6.abrupt("return", webex.request({
975
980
  uri: query,
976
981
  method: _types2.HTTP_METHODS.GET,
977
982
  headers: (0, _defineProperty2.default)((0, _defineProperty2.default)({}, _constants.CISCO_DEVICE_URL, webex.internal.device.url), _constants.SPARK_USER_AGENT, _constants.CALLING_USER_AGENT)
978
983
  }));
979
- case 6:
984
+ case 8:
980
985
  case "end":
981
986
  return _context6.stop();
982
987
  }
@@ -995,7 +1000,7 @@ function resolveCallerIdDisplay(_x21) {
995
1000
  function _resolveCallerIdDisplay() {
996
1001
  _resolveCallerIdDisplay = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee7(filter) {
997
1002
  var _resolution;
998
- var resolution, displayResult, response, res, _scimResource$photos, scimResource, numberObj, photo;
1003
+ var resolution, displayResult, response, res, _scimResource$phoneNu, _scimResource$phoneNu2, _scimResource$photos, scimResource, numberObj, photo;
999
1004
  return _regenerator.default.wrap(function _callee7$(_context7) {
1000
1005
  while (1) switch (_context7.prev = _context7.next) {
1001
1006
  case 0:
@@ -1029,14 +1034,14 @@ function _resolveCallerIdDisplay() {
1029
1034
  displayResult.name = scimResource.displayName;
1030
1035
 
1031
1036
  /* Pick only the primary number OR 2nd preference Work */
1032
- numberObj = scimResource.phoneNumbers.find(function (num) {
1037
+ numberObj = ((_scimResource$phoneNu = scimResource.phoneNumbers) === null || _scimResource$phoneNu === void 0 ? void 0 : _scimResource$phoneNu.find(function (num) {
1033
1038
  return num.primary;
1034
- }) || scimResource.phoneNumbers.find(function (num) {
1039
+ })) || ((_scimResource$phoneNu2 = scimResource.phoneNumbers) === null || _scimResource$phoneNu2 === void 0 ? void 0 : _scimResource$phoneNu2.find(function (num) {
1035
1040
  return num.type.toLowerCase() === 'work';
1036
- });
1041
+ }));
1037
1042
  if (numberObj) {
1038
1043
  displayResult.num = numberObj.value;
1039
- } else if (scimResource.phoneNumbers.length > 0) {
1044
+ } else if (scimResource.phoneNumbers && scimResource.phoneNumbers.length > 0) {
1040
1045
  /* When no primary number exists OR PA-ID/From failed to populate, we take the first number */
1041
1046
  _Logger.default.info('Failure to resolve caller information. Setting number as caller ID', {
1042
1047
  file: _constants.UTILS_FILE,