@webex/calling 3.9.0 → 3.10.0-next.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/CallHistory/CallHistory.js +43 -43
- package/dist/CallHistory/CallHistory.js.map +1 -1
- package/dist/CallHistory/CallHistory.test.js +157 -152
- package/dist/CallHistory/CallHistory.test.js.map +1 -1
- package/dist/CallHistory/callHistoryFixtures.js.map +1 -1
- package/dist/CallHistory/constants.js.map +1 -1
- package/dist/CallHistory/types.js.map +1 -1
- package/dist/CallSettings/CallSettings.js +8 -8
- package/dist/CallSettings/CallSettings.js.map +1 -1
- package/dist/CallSettings/CallSettings.test.js +1 -1
- package/dist/CallSettings/CallSettings.test.js.map +1 -1
- package/dist/CallSettings/UcmBackendConnector.js +12 -11
- package/dist/CallSettings/UcmBackendConnector.js.map +1 -1
- package/dist/CallSettings/UcmBackendConnector.test.js +11 -11
- package/dist/CallSettings/UcmBackendConnector.test.js.map +1 -1
- package/dist/CallSettings/WxCallBackendConnector.js +53 -52
- package/dist/CallSettings/WxCallBackendConnector.js.map +1 -1
- package/dist/CallSettings/WxCallBackendConnector.test.js +112 -110
- package/dist/CallSettings/WxCallBackendConnector.test.js.map +1 -1
- package/dist/CallSettings/constants.js.map +1 -1
- package/dist/CallSettings/testFixtures.js.map +1 -1
- package/dist/CallSettings/types.js.map +1 -1
- package/dist/CallingClient/CallingClient.js +458 -203
- package/dist/CallingClient/CallingClient.js.map +1 -1
- package/dist/CallingClient/CallingClient.test.js +458 -315
- package/dist/CallingClient/CallingClient.test.js.map +1 -1
- package/dist/CallingClient/callRecordFixtures.js.map +1 -1
- package/dist/CallingClient/calling/CallerId/index.js +2 -2
- package/dist/CallingClient/calling/CallerId/index.js.map +1 -1
- package/dist/CallingClient/calling/CallerId/index.test.js +8 -7
- package/dist/CallingClient/calling/CallerId/index.test.js.map +1 -1
- package/dist/CallingClient/calling/CallerId/types.js.map +1 -1
- package/dist/CallingClient/calling/call.js +405 -372
- package/dist/CallingClient/calling/call.js.map +1 -1
- package/dist/CallingClient/calling/call.test.js +411 -410
- package/dist/CallingClient/calling/call.test.js.map +1 -1
- package/dist/CallingClient/calling/callManager.js +3 -4
- package/dist/CallingClient/calling/callManager.js.map +1 -1
- package/dist/CallingClient/calling/callManager.test.js +68 -69
- package/dist/CallingClient/calling/callManager.test.js.map +1 -1
- package/dist/CallingClient/calling/index.js.map +1 -1
- package/dist/CallingClient/calling/types.js.map +1 -1
- package/dist/CallingClient/callingClientFixtures.js.map +1 -1
- package/dist/CallingClient/constants.js +9 -6
- package/dist/CallingClient/constants.js.map +1 -1
- package/dist/CallingClient/line/index.js +10 -11
- package/dist/CallingClient/line/index.js.map +1 -1
- package/dist/CallingClient/line/line.test.js +10 -9
- package/dist/CallingClient/line/line.test.js.map +1 -1
- package/dist/CallingClient/line/types.js.map +1 -1
- package/dist/CallingClient/registration/index.js.map +1 -1
- package/dist/CallingClient/registration/register.js +285 -205
- package/dist/CallingClient/registration/register.js.map +1 -1
- package/dist/CallingClient/registration/register.test.js +251 -180
- package/dist/CallingClient/registration/register.test.js.map +1 -1
- package/dist/CallingClient/registration/registerFixtures.js.map +1 -1
- package/dist/CallingClient/registration/types.js.map +1 -1
- package/dist/CallingClient/registration/webWorker.js +25 -10
- package/dist/CallingClient/registration/webWorker.js.map +1 -1
- package/dist/CallingClient/registration/webWorker.test.js +85 -38
- package/dist/CallingClient/registration/webWorker.test.js.map +1 -1
- package/dist/CallingClient/registration/webWorkerStr.js +1 -1
- package/dist/CallingClient/registration/webWorkerStr.js.map +1 -1
- package/dist/CallingClient/types.js.map +1 -1
- package/dist/CallingClient/windowsChromiumIceWarmupUtils.js +142 -0
- package/dist/CallingClient/windowsChromiumIceWarmupUtils.js.map +1 -0
- package/dist/Contacts/ContactsClient.js +244 -247
- package/dist/Contacts/ContactsClient.js.map +1 -1
- package/dist/Contacts/ContactsClient.test.js +93 -93
- package/dist/Contacts/ContactsClient.test.js.map +1 -1
- package/dist/Contacts/constants.js +2 -2
- package/dist/Contacts/constants.js.map +1 -1
- package/dist/Contacts/contactFixtures.js.map +1 -1
- package/dist/Contacts/types.js.map +1 -1
- package/dist/Errors/catalog/CallError.js +2 -2
- package/dist/Errors/catalog/CallError.js.map +1 -1
- package/dist/Errors/catalog/CallingDeviceError.js +2 -2
- package/dist/Errors/catalog/CallingDeviceError.js.map +1 -1
- package/dist/Errors/catalog/ExtendedError.js +3 -3
- package/dist/Errors/catalog/ExtendedError.js.map +1 -1
- package/dist/Errors/catalog/LineError.js +2 -2
- package/dist/Errors/catalog/LineError.js.map +1 -1
- package/dist/Errors/index.js.map +1 -1
- package/dist/Errors/types.js.map +1 -1
- package/dist/Events/impl/index.js +3 -3
- package/dist/Events/impl/index.js.map +1 -1
- package/dist/Events/types.js.map +1 -1
- package/dist/Logger/index.js +3 -3
- package/dist/Logger/index.js.map +1 -1
- package/dist/Logger/index.test.js +1 -1
- package/dist/Logger/index.test.js.map +1 -1
- package/dist/Logger/types.js.map +1 -1
- package/dist/Metrics/index.js +221 -104
- package/dist/Metrics/index.js.map +1 -1
- package/dist/Metrics/index.test.js +112 -23
- package/dist/Metrics/index.test.js.map +1 -1
- package/dist/Metrics/types.js +15 -1
- package/dist/Metrics/types.js.map +1 -1
- package/dist/SDKConnector/index.js +0 -1
- package/dist/SDKConnector/index.js.map +1 -1
- package/dist/SDKConnector/index.test.js.map +1 -1
- package/dist/SDKConnector/types.js.map +1 -1
- package/dist/SDKConnector/utils.js.map +1 -1
- package/dist/SDKConnector/utils.test.js.map +1 -1
- package/dist/Voicemail/BroadworksBackendConnector.js +55 -61
- package/dist/Voicemail/BroadworksBackendConnector.js.map +1 -1
- package/dist/Voicemail/BroadworksBackendConnector.test.js +129 -122
- package/dist/Voicemail/BroadworksBackendConnector.test.js.map +1 -1
- package/dist/Voicemail/UcmBackendConnector.js +53 -50
- package/dist/Voicemail/UcmBackendConnector.js.map +1 -1
- package/dist/Voicemail/UcmBackendConnector.test.js +73 -74
- package/dist/Voicemail/UcmBackendConnector.test.js.map +1 -1
- package/dist/Voicemail/Voicemail.js +89 -113
- package/dist/Voicemail/Voicemail.js.map +1 -1
- package/dist/Voicemail/Voicemail.test.js +2 -2
- package/dist/Voicemail/Voicemail.test.js.map +1 -1
- package/dist/Voicemail/WxCallBackendConnector.js +87 -92
- package/dist/Voicemail/WxCallBackendConnector.js.map +1 -1
- package/dist/Voicemail/WxCallBackendConnector.test.js +228 -203
- package/dist/Voicemail/WxCallBackendConnector.test.js.map +1 -1
- package/dist/Voicemail/constants.js.map +1 -1
- package/dist/Voicemail/types.js.map +1 -1
- package/dist/Voicemail/voicemailFixture.js.map +1 -1
- package/dist/api.js.map +1 -1
- package/dist/common/Utils.js +85 -66
- package/dist/common/Utils.js.map +1 -1
- package/dist/common/Utils.test.js +113 -123
- package/dist/common/Utils.test.js.map +1 -1
- package/dist/common/constants.js.map +1 -1
- package/dist/common/index.js.map +1 -1
- package/dist/common/testUtil.js +1 -1
- package/dist/common/testUtil.js.map +1 -1
- package/dist/common/types.js.map +1 -1
- package/dist/index.js +5 -5
- package/dist/index.js.map +1 -1
- package/dist/module/CallHistory/CallHistory.js +17 -8
- package/dist/module/CallSettings/UcmBackendConnector.js +2 -2
- package/dist/module/CallSettings/WxCallBackendConnector.js +14 -14
- package/dist/module/CallingClient/CallingClient.js +176 -36
- package/dist/module/CallingClient/calling/call.js +91 -61
- package/dist/module/CallingClient/constants.js +8 -4
- package/dist/module/CallingClient/line/index.js +3 -3
- package/dist/module/CallingClient/registration/register.js +37 -13
- package/dist/module/CallingClient/registration/webWorker.js +17 -3
- package/dist/module/CallingClient/registration/webWorkerStr.js +19 -3
- package/dist/module/CallingClient/windowsChromiumIceWarmupUtils.js +59 -0
- package/dist/module/Contacts/ContactsClient.js +33 -37
- package/dist/module/Contacts/constants.js +1 -1
- package/dist/module/Events/impl/index.js +1 -1
- package/dist/module/Logger/index.js +2 -2
- package/dist/module/Metrics/index.js +142 -55
- package/dist/module/Metrics/types.js +14 -0
- package/dist/module/Voicemail/BroadworksBackendConnector.js +10 -17
- package/dist/module/Voicemail/UcmBackendConnector.js +11 -10
- package/dist/module/Voicemail/Voicemail.js +42 -68
- package/dist/module/Voicemail/WxCallBackendConnector.js +22 -28
- package/dist/module/common/Utils.js +29 -12
- package/dist/types/CallHistory/CallHistory.d.ts.map +1 -1
- package/dist/types/CallSettings/UcmBackendConnector.d.ts.map +1 -1
- package/dist/types/CallSettings/WxCallBackendConnector.d.ts.map +1 -1
- package/dist/types/CallingClient/CallingClient.d.ts +12 -1
- package/dist/types/CallingClient/CallingClient.d.ts.map +1 -1
- package/dist/types/CallingClient/calling/call.d.ts.map +1 -1
- package/dist/types/CallingClient/calling/types.d.ts +2 -1
- package/dist/types/CallingClient/calling/types.d.ts.map +1 -1
- package/dist/types/CallingClient/constants.d.ts +8 -4
- package/dist/types/CallingClient/constants.d.ts.map +1 -1
- package/dist/types/CallingClient/line/index.d.ts.map +1 -1
- package/dist/types/CallingClient/registration/register.d.ts +1 -0
- package/dist/types/CallingClient/registration/register.d.ts.map +1 -1
- package/dist/types/CallingClient/registration/webWorker.d.ts +2 -1
- package/dist/types/CallingClient/registration/webWorker.d.ts.map +1 -1
- package/dist/types/CallingClient/registration/webWorkerStr.d.ts +1 -1
- package/dist/types/CallingClient/registration/webWorkerStr.d.ts.map +1 -1
- package/dist/types/CallingClient/windowsChromiumIceWarmupUtils.d.ts +5 -0
- package/dist/types/CallingClient/windowsChromiumIceWarmupUtils.d.ts.map +1 -0
- package/dist/types/Contacts/ContactsClient.d.ts.map +1 -1
- package/dist/types/Contacts/constants.d.ts +1 -1
- package/dist/types/Contacts/constants.d.ts.map +1 -1
- package/dist/types/Logger/index.d.ts +1 -2
- package/dist/types/Logger/index.d.ts.map +1 -1
- package/dist/types/Metrics/index.d.ts.map +1 -1
- package/dist/types/Metrics/types.d.ts +18 -3
- package/dist/types/Metrics/types.d.ts.map +1 -1
- package/dist/types/Voicemail/BroadworksBackendConnector.d.ts.map +1 -1
- package/dist/types/Voicemail/UcmBackendConnector.d.ts.map +1 -1
- package/dist/types/Voicemail/Voicemail.d.ts.map +1 -1
- package/dist/types/Voicemail/WxCallBackendConnector.d.ts.map +1 -1
- package/dist/types/common/Utils.d.ts.map +1 -1
- package/dist/types/common/types.d.ts +1 -0
- package/dist/types/common/types.d.ts.map +1 -1
- package/package.json +10 -8
|
@@ -639,8 +639,7 @@ export class Call extends Eventing {
|
|
|
639
639
|
});
|
|
640
640
|
}
|
|
641
641
|
catch (e) {
|
|
642
|
-
|
|
643
|
-
log.error(extendedError, {
|
|
642
|
+
log.error(`Failed to setup the call: ${JSON.stringify(e)}`, {
|
|
644
643
|
file: CALL_FILE,
|
|
645
644
|
method: METHODS.HANDLE_OUTGOING_CALL_SETUP,
|
|
646
645
|
});
|
|
@@ -653,6 +652,7 @@ export class Call extends Eventing {
|
|
|
653
652
|
await uploadLogs({
|
|
654
653
|
correlationId: this.correlationId,
|
|
655
654
|
callId: this.callId,
|
|
655
|
+
broadworksCorrelationInfo: this.broadworksCorrelationInfo,
|
|
656
656
|
});
|
|
657
657
|
}
|
|
658
658
|
}
|
|
@@ -681,8 +681,7 @@ export class Call extends Eventing {
|
|
|
681
681
|
}
|
|
682
682
|
}
|
|
683
683
|
catch (e) {
|
|
684
|
-
|
|
685
|
-
log.error(extendedError, {
|
|
684
|
+
log.error(`Failed to put the call on hold: ${JSON.stringify(e)}`, {
|
|
686
685
|
file: CALL_FILE,
|
|
687
686
|
method: METHODS.HANDLE_CALL_HOLD,
|
|
688
687
|
});
|
|
@@ -695,6 +694,7 @@ export class Call extends Eventing {
|
|
|
695
694
|
await uploadLogs({
|
|
696
695
|
correlationId: this.correlationId,
|
|
697
696
|
callId: this.callId,
|
|
697
|
+
broadworksCorrelationInfo: this.broadworksCorrelationInfo,
|
|
698
698
|
});
|
|
699
699
|
}
|
|
700
700
|
}
|
|
@@ -707,14 +707,14 @@ export class Call extends Eventing {
|
|
|
707
707
|
const response = await this.postSSRequest(undefined, SUPPLEMENTARY_SERVICES.RESUME);
|
|
708
708
|
log.log(`Response code: ${response.statusCode}`, {
|
|
709
709
|
file: CALL_FILE,
|
|
710
|
-
method:
|
|
710
|
+
method: METHODS.HANDLE_CALL_RESUME,
|
|
711
711
|
});
|
|
712
712
|
if (this.isHeld() === true) {
|
|
713
713
|
this.supplementaryServicesTimer = setTimeout(async () => {
|
|
714
|
-
const errorContext = { file: CALL_FILE, method:
|
|
714
|
+
const errorContext = { file: CALL_FILE, method: METHODS.HANDLE_CALL_RESUME };
|
|
715
715
|
log.warn('Resume response timed out', {
|
|
716
716
|
file: CALL_FILE,
|
|
717
|
-
method:
|
|
717
|
+
method: METHODS.HANDLE_CALL_RESUME,
|
|
718
718
|
});
|
|
719
719
|
const callError = createCallError('An error occurred while resuming the call. Wait a moment and try again.', errorContext, ERROR_TYPE.TIMEOUT, this.getCorrelationId(), ERROR_LAYER.CALL_CONTROL);
|
|
720
720
|
this.emit(CALL_EVENT_KEYS.RESUME_ERROR, callError);
|
|
@@ -723,20 +723,20 @@ export class Call extends Eventing {
|
|
|
723
723
|
}
|
|
724
724
|
}
|
|
725
725
|
catch (e) {
|
|
726
|
-
|
|
727
|
-
log.error(extendedError, {
|
|
726
|
+
log.error(`Failed to resume the call: ${JSON.stringify(e)}`, {
|
|
728
727
|
file: CALL_FILE,
|
|
729
|
-
method:
|
|
728
|
+
method: METHODS.HANDLE_CALL_RESUME,
|
|
730
729
|
});
|
|
731
730
|
const errData = e;
|
|
732
731
|
handleCallErrors((error) => {
|
|
733
732
|
this.emit(CALL_EVENT_KEYS.RESUME_ERROR, error);
|
|
734
733
|
this.submitCallErrorMetric(error);
|
|
735
734
|
this.sendCallStateMachineEvt({ type: 'E_CALL_ESTABLISHED', data: errData });
|
|
736
|
-
}, ERROR_LAYER.CALL_CONTROL, (interval) => undefined, this.getCorrelationId(), errData,
|
|
735
|
+
}, ERROR_LAYER.CALL_CONTROL, (interval) => undefined, this.getCorrelationId(), errData, METHODS.HANDLE_CALL_RESUME, CALL_FILE);
|
|
737
736
|
await uploadLogs({
|
|
738
737
|
correlationId: this.correlationId,
|
|
739
738
|
callId: this.callId,
|
|
739
|
+
broadworksCorrelationInfo: this.broadworksCorrelationInfo,
|
|
740
740
|
});
|
|
741
741
|
}
|
|
742
742
|
}
|
|
@@ -749,20 +749,20 @@ export class Call extends Eventing {
|
|
|
749
749
|
if (data?.callProgressData?.inbandMedia) {
|
|
750
750
|
log.log('Inband media present. Setting Early Media flag', {
|
|
751
751
|
file: CALL_FILE,
|
|
752
|
-
method:
|
|
752
|
+
method: METHODS.HANDLE_INCOMING_CALL_PROGRESS,
|
|
753
753
|
});
|
|
754
754
|
this.earlyMedia = true;
|
|
755
755
|
}
|
|
756
756
|
else {
|
|
757
757
|
log.log('Inband media not present.', {
|
|
758
758
|
file: CALL_FILE,
|
|
759
|
-
method:
|
|
759
|
+
method: METHODS.HANDLE_INCOMING_CALL_PROGRESS,
|
|
760
760
|
});
|
|
761
761
|
}
|
|
762
762
|
if (data?.callerId) {
|
|
763
763
|
log.info('Processing Caller-Id data', {
|
|
764
764
|
file: CALL_FILE,
|
|
765
|
-
method:
|
|
765
|
+
method: METHODS.HANDLE_INCOMING_CALL_PROGRESS,
|
|
766
766
|
});
|
|
767
767
|
this.startCallerIdResolution(data.callerId);
|
|
768
768
|
}
|
|
@@ -777,19 +777,19 @@ export class Call extends Eventing {
|
|
|
777
777
|
if (!this.mediaConnection) {
|
|
778
778
|
log.info('Media connection is not up, buffer the remote Offer Request for later handling', {
|
|
779
779
|
file: CALL_FILE,
|
|
780
|
-
method:
|
|
780
|
+
method: METHODS.HANDLE_INCOMING_ROAP_OFFER_REQUEST,
|
|
781
781
|
});
|
|
782
782
|
this.seq = message.seq;
|
|
783
783
|
log.info(`Setting Sequence No: ${this.seq}`, {
|
|
784
784
|
file: CALL_FILE,
|
|
785
|
-
method:
|
|
785
|
+
method: METHODS.HANDLE_INCOMING_ROAP_OFFER_REQUEST,
|
|
786
786
|
});
|
|
787
787
|
this.remoteRoapMessage = message;
|
|
788
788
|
}
|
|
789
789
|
else if (this.receivedRoapOKSeq === message.seq - 2) {
|
|
790
790
|
log.info('Waiting for Roap OK, buffer the remote Offer Request for later handling', {
|
|
791
791
|
file: CALL_FILE,
|
|
792
|
-
method:
|
|
792
|
+
method: METHODS.HANDLE_INCOMING_ROAP_OFFER_REQUEST,
|
|
793
793
|
});
|
|
794
794
|
this.remoteRoapMessage = message;
|
|
795
795
|
}
|
|
@@ -808,24 +808,24 @@ export class Call extends Eventing {
|
|
|
808
808
|
const res = await this.patch(MobiusCallState.ALERTING);
|
|
809
809
|
log.log(`PATCH response: ${res.statusCode}`, {
|
|
810
810
|
file: CALL_FILE,
|
|
811
|
-
method:
|
|
811
|
+
method: METHODS.HANDLE_OUTGOING_CALL_ALERTING,
|
|
812
812
|
});
|
|
813
813
|
}
|
|
814
|
-
catch (
|
|
815
|
-
|
|
816
|
-
log.error(extendedError, {
|
|
814
|
+
catch (e) {
|
|
815
|
+
log.error(`Failed to signal call progression: ${JSON.stringify(e)}`, {
|
|
817
816
|
file: CALL_FILE,
|
|
818
|
-
method:
|
|
817
|
+
method: METHODS.HANDLE_OUTGOING_CALL_ALERTING,
|
|
819
818
|
});
|
|
820
|
-
const errData =
|
|
819
|
+
const errData = e;
|
|
821
820
|
handleCallErrors((error) => {
|
|
822
821
|
this.emit(CALL_EVENT_KEYS.CALL_ERROR, error);
|
|
823
822
|
this.submitCallErrorMetric(error);
|
|
824
823
|
this.sendCallStateMachineEvt({ type: 'E_UNKNOWN', data: errData });
|
|
825
|
-
}, ERROR_LAYER.CALL_CONTROL, (interval) => undefined, this.getCorrelationId(), errData,
|
|
824
|
+
}, ERROR_LAYER.CALL_CONTROL, (interval) => undefined, this.getCorrelationId(), errData, METHODS.HANDLE_OUTGOING_CALL_ALERTING, CALL_FILE);
|
|
826
825
|
await uploadLogs({
|
|
827
826
|
correlationId: this.correlationId,
|
|
828
827
|
callId: this.callId,
|
|
828
|
+
broadworksCorrelationInfo: this.broadworksCorrelationInfo,
|
|
829
829
|
});
|
|
830
830
|
}
|
|
831
831
|
}
|
|
@@ -848,7 +848,7 @@ export class Call extends Eventing {
|
|
|
848
848
|
if (!this.remoteRoapMessage) {
|
|
849
849
|
log.warn('Offer not yet received from remote end... Exiting', {
|
|
850
850
|
file: CALL_FILE,
|
|
851
|
-
method:
|
|
851
|
+
method: METHODS.HANDLE_OUTGOING_CALL_CONNECT,
|
|
852
852
|
});
|
|
853
853
|
return;
|
|
854
854
|
}
|
|
@@ -857,24 +857,24 @@ export class Call extends Eventing {
|
|
|
857
857
|
const res = await this.patch(MobiusCallState.CONNECTED);
|
|
858
858
|
log.log(`PATCH response: ${res.statusCode}`, {
|
|
859
859
|
file: CALL_FILE,
|
|
860
|
-
method:
|
|
860
|
+
method: METHODS.HANDLE_OUTGOING_CALL_CONNECT,
|
|
861
861
|
});
|
|
862
862
|
}
|
|
863
|
-
catch (
|
|
864
|
-
|
|
865
|
-
log.error(extendedError, {
|
|
863
|
+
catch (e) {
|
|
864
|
+
log.error(`Failed to connect the call: ${JSON.stringify(e)}`, {
|
|
866
865
|
file: CALL_FILE,
|
|
867
|
-
method:
|
|
866
|
+
method: METHODS.HANDLE_OUTGOING_CALL_CONNECT,
|
|
868
867
|
});
|
|
869
|
-
const errData =
|
|
868
|
+
const errData = e;
|
|
870
869
|
handleCallErrors((error) => {
|
|
871
870
|
this.emit(CALL_EVENT_KEYS.CALL_ERROR, error);
|
|
872
871
|
this.submitCallErrorMetric(error);
|
|
873
872
|
this.sendCallStateMachineEvt({ type: 'E_UNKNOWN', data: errData });
|
|
874
|
-
}, ERROR_LAYER.CALL_CONTROL, (interval) => undefined, this.getCorrelationId(), errData,
|
|
873
|
+
}, ERROR_LAYER.CALL_CONTROL, (interval) => undefined, this.getCorrelationId(), errData, METHODS.HANDLE_OUTGOING_CALL_CONNECT, CALL_FILE);
|
|
875
874
|
await uploadLogs({
|
|
876
875
|
correlationId: this.correlationId,
|
|
877
876
|
callId: this.callId,
|
|
877
|
+
broadworksCorrelationInfo: this.broadworksCorrelationInfo,
|
|
878
878
|
});
|
|
879
879
|
}
|
|
880
880
|
}
|
|
@@ -892,10 +892,15 @@ export class Call extends Eventing {
|
|
|
892
892
|
});
|
|
893
893
|
}
|
|
894
894
|
catch (e) {
|
|
895
|
-
log.warn(
|
|
895
|
+
log.warn(`Failed to delete the call: ${JSON.stringify(e)}`, {
|
|
896
896
|
file: CALL_FILE,
|
|
897
897
|
method: METHODS.HANDLE_OUTGOING_CALL_DISCONNECT,
|
|
898
898
|
});
|
|
899
|
+
uploadLogs({
|
|
900
|
+
correlationId: this.correlationId,
|
|
901
|
+
callId: this.callId,
|
|
902
|
+
broadworksCorrelationInfo: this.broadworksCorrelationInfo,
|
|
903
|
+
});
|
|
899
904
|
}
|
|
900
905
|
this.deleteCb(this.correlationId);
|
|
901
906
|
this.unregisterListeners();
|
|
@@ -935,6 +940,11 @@ export class Call extends Eventing {
|
|
|
935
940
|
file: CALL_FILE,
|
|
936
941
|
method: METHODS.HANDLE_OUTGOING_CALL_DISCONNECT,
|
|
937
942
|
});
|
|
943
|
+
uploadLogs({
|
|
944
|
+
correlationId: this.correlationId,
|
|
945
|
+
callId: this.callId,
|
|
946
|
+
broadworksCorrelationInfo: this.broadworksCorrelationInfo,
|
|
947
|
+
});
|
|
938
948
|
}
|
|
939
949
|
this.deleteCb(this.correlationId);
|
|
940
950
|
this.unregisterListeners();
|
|
@@ -991,6 +1001,7 @@ export class Call extends Eventing {
|
|
|
991
1001
|
await uploadLogs({
|
|
992
1002
|
correlationId: this.correlationId,
|
|
993
1003
|
callId: this.callId,
|
|
1004
|
+
broadworksCorrelationInfo: this.broadworksCorrelationInfo,
|
|
994
1005
|
});
|
|
995
1006
|
}
|
|
996
1007
|
}, DEFAULT_SESSION_TIMER);
|
|
@@ -1010,7 +1021,7 @@ export class Call extends Eventing {
|
|
|
1010
1021
|
try {
|
|
1011
1022
|
this.setDisconnectReason();
|
|
1012
1023
|
const response = await this.delete();
|
|
1013
|
-
log.log(`
|
|
1024
|
+
log.log(`Response code: ${response.statusCode}`, {
|
|
1014
1025
|
file: CALL_FILE,
|
|
1015
1026
|
method: METHODS.HANDLE_UNKNOWN_STATE,
|
|
1016
1027
|
});
|
|
@@ -1020,6 +1031,11 @@ export class Call extends Eventing {
|
|
|
1020
1031
|
file: CALL_FILE,
|
|
1021
1032
|
method: METHODS.HANDLE_UNKNOWN_STATE,
|
|
1022
1033
|
});
|
|
1034
|
+
uploadLogs({
|
|
1035
|
+
correlationId: this.correlationId,
|
|
1036
|
+
callId: this.callId,
|
|
1037
|
+
broadworksCorrelationInfo: this.broadworksCorrelationInfo,
|
|
1038
|
+
});
|
|
1023
1039
|
}
|
|
1024
1040
|
this.deleteCb(this.correlationId);
|
|
1025
1041
|
if (this.sessionTimer) {
|
|
@@ -1108,6 +1124,7 @@ export class Call extends Eventing {
|
|
|
1108
1124
|
await uploadLogs({
|
|
1109
1125
|
correlationId: this.correlationId,
|
|
1110
1126
|
callId: this.callId,
|
|
1127
|
+
broadworksCorrelationInfo: this.broadworksCorrelationInfo,
|
|
1111
1128
|
});
|
|
1112
1129
|
}
|
|
1113
1130
|
}
|
|
@@ -1163,6 +1180,7 @@ export class Call extends Eventing {
|
|
|
1163
1180
|
await uploadLogs({
|
|
1164
1181
|
correlationId: this.correlationId,
|
|
1165
1182
|
callId: this.callId,
|
|
1183
|
+
broadworksCorrelationInfo: this.broadworksCorrelationInfo,
|
|
1166
1184
|
});
|
|
1167
1185
|
}
|
|
1168
1186
|
}
|
|
@@ -1183,22 +1201,22 @@ export class Call extends Eventing {
|
|
|
1183
1201
|
if (!message?.sdp) {
|
|
1184
1202
|
log.info('Initializing Offer...', {
|
|
1185
1203
|
file: CALL_FILE,
|
|
1186
|
-
method:
|
|
1204
|
+
method: METHODS.HANDLE_OUTGOING_ROAP_OFFER,
|
|
1187
1205
|
});
|
|
1188
1206
|
this.mediaConnection.initiateOffer();
|
|
1189
1207
|
return;
|
|
1190
1208
|
}
|
|
1191
1209
|
try {
|
|
1192
1210
|
const res = await this.postMedia(message);
|
|
1193
|
-
log.log(`
|
|
1211
|
+
log.log(`Response code: ${res.statusCode}`, {
|
|
1194
1212
|
file: CALL_FILE,
|
|
1195
|
-
method:
|
|
1213
|
+
method: METHODS.HANDLE_OUTGOING_ROAP_OFFER,
|
|
1196
1214
|
});
|
|
1197
1215
|
}
|
|
1198
1216
|
catch (err) {
|
|
1199
1217
|
log.warn('Failed to process MediaOk request', {
|
|
1200
1218
|
file: CALL_FILE,
|
|
1201
|
-
method:
|
|
1219
|
+
method: METHODS.HANDLE_OUTGOING_ROAP_OFFER,
|
|
1202
1220
|
});
|
|
1203
1221
|
const errData = err;
|
|
1204
1222
|
handleCallErrors(this.getEmitterCallback(errData), ERROR_LAYER.MEDIA, (interval) => {
|
|
@@ -1207,10 +1225,11 @@ export class Call extends Eventing {
|
|
|
1207
1225
|
this.sendMediaStateMachineEvt({ type: 'E_SEND_ROAP_OFFER', data: event.data });
|
|
1208
1226
|
}, interval * 1000);
|
|
1209
1227
|
}
|
|
1210
|
-
}, this.getCorrelationId(), errData,
|
|
1228
|
+
}, this.getCorrelationId(), errData, METHODS.HANDLE_OUTGOING_ROAP_OFFER, CALL_FILE);
|
|
1211
1229
|
await uploadLogs({
|
|
1212
1230
|
correlationId: this.correlationId,
|
|
1213
1231
|
callId: this.callId,
|
|
1232
|
+
broadworksCorrelationInfo: this.broadworksCorrelationInfo,
|
|
1214
1233
|
});
|
|
1215
1234
|
}
|
|
1216
1235
|
}
|
|
@@ -1223,15 +1242,15 @@ export class Call extends Eventing {
|
|
|
1223
1242
|
try {
|
|
1224
1243
|
message.seq = this.seq;
|
|
1225
1244
|
const res = await this.postMedia(message);
|
|
1226
|
-
log.log(`
|
|
1245
|
+
log.log(`Response code: ${res.statusCode}`, {
|
|
1227
1246
|
file: CALL_FILE,
|
|
1228
|
-
method:
|
|
1247
|
+
method: METHODS.HANDLE_OUTGOING_ROAP_ANSWER,
|
|
1229
1248
|
});
|
|
1230
1249
|
}
|
|
1231
1250
|
catch (err) {
|
|
1232
1251
|
log.warn('Failed to send MediaAnswer request', {
|
|
1233
1252
|
file: CALL_FILE,
|
|
1234
|
-
method:
|
|
1253
|
+
method: METHODS.HANDLE_OUTGOING_ROAP_ANSWER,
|
|
1235
1254
|
});
|
|
1236
1255
|
const errData = err;
|
|
1237
1256
|
handleCallErrors(this.getEmitterCallback(errData), ERROR_LAYER.MEDIA, (interval) => {
|
|
@@ -1240,10 +1259,11 @@ export class Call extends Eventing {
|
|
|
1240
1259
|
this.sendMediaStateMachineEvt({ type: 'E_SEND_ROAP_ANSWER', data: event.data });
|
|
1241
1260
|
}, interval * 1000);
|
|
1242
1261
|
}
|
|
1243
|
-
}, this.getCorrelationId(), errData,
|
|
1262
|
+
}, this.getCorrelationId(), errData, METHODS.HANDLE_OUTGOING_ROAP_ANSWER, CALL_FILE);
|
|
1244
1263
|
await uploadLogs({
|
|
1245
1264
|
correlationId: this.correlationId,
|
|
1246
1265
|
callId: this.callId,
|
|
1266
|
+
broadworksCorrelationInfo: this.broadworksCorrelationInfo,
|
|
1247
1267
|
});
|
|
1248
1268
|
}
|
|
1249
1269
|
}
|
|
@@ -1257,25 +1277,25 @@ export class Call extends Eventing {
|
|
|
1257
1277
|
if (!this.mediaConnection) {
|
|
1258
1278
|
log.info('Media connection is not up, buffer the remote offer for later handling', {
|
|
1259
1279
|
file: CALL_FILE,
|
|
1260
|
-
method:
|
|
1280
|
+
method: METHODS.HANDLE_INCOMING_ROAP_OFFER,
|
|
1261
1281
|
});
|
|
1262
1282
|
this.seq = message.seq;
|
|
1263
1283
|
log.info(`Setting Sequence No: ${this.seq}`, {
|
|
1264
1284
|
file: CALL_FILE,
|
|
1265
|
-
method:
|
|
1285
|
+
method: METHODS.HANDLE_INCOMING_ROAP_OFFER,
|
|
1266
1286
|
});
|
|
1267
1287
|
}
|
|
1268
1288
|
else if (this.receivedRoapOKSeq === message.seq - 2) {
|
|
1269
1289
|
log.info('Waiting for Roap OK, buffer the remote offer for later handling', {
|
|
1270
1290
|
file: CALL_FILE,
|
|
1271
|
-
method:
|
|
1291
|
+
method: METHODS.HANDLE_INCOMING_ROAP_OFFER,
|
|
1272
1292
|
});
|
|
1273
1293
|
this.remoteRoapMessage = message;
|
|
1274
1294
|
}
|
|
1275
1295
|
else {
|
|
1276
1296
|
log.info('Handling new offer...', {
|
|
1277
1297
|
file: CALL_FILE,
|
|
1278
|
-
method:
|
|
1298
|
+
method: METHODS.HANDLE_INCOMING_ROAP_OFFER,
|
|
1279
1299
|
});
|
|
1280
1300
|
this.seq = message.seq;
|
|
1281
1301
|
if (this.mediaConnection) {
|
|
@@ -1307,12 +1327,12 @@ export class Call extends Eventing {
|
|
|
1307
1327
|
}
|
|
1308
1328
|
catch (error) {
|
|
1309
1329
|
const errorInfo = error;
|
|
1310
|
-
const errorStatus = serviceErrorCodeHandler(errorInfo, loggerContext);
|
|
1311
|
-
|
|
1312
|
-
log.error(errorLog, loggerContext);
|
|
1330
|
+
const errorStatus = await serviceErrorCodeHandler(errorInfo, loggerContext);
|
|
1331
|
+
log.error(`Failed to upload webrtc telemetry statistics. ${JSON.stringify(errorStatus)}`, loggerContext);
|
|
1313
1332
|
await uploadLogs({
|
|
1314
1333
|
correlationId: this.correlationId,
|
|
1315
1334
|
callId: this.callId,
|
|
1335
|
+
broadworksCorrelationInfo: this.broadworksCorrelationInfo,
|
|
1316
1336
|
});
|
|
1317
1337
|
}
|
|
1318
1338
|
};
|
|
@@ -1465,7 +1485,7 @@ export class Call extends Eventing {
|
|
|
1465
1485
|
async patch(state) {
|
|
1466
1486
|
log.info(`Send a PATCH for ${state} to Webex Calling`, {
|
|
1467
1487
|
file: CALL_FILE,
|
|
1468
|
-
method:
|
|
1488
|
+
method: 'patch',
|
|
1469
1489
|
});
|
|
1470
1490
|
return this.webex.request({
|
|
1471
1491
|
uri: `${this.mobiusUrl}${DEVICES_ENDPOINT_RESOURCE}/${this.deviceId}/${CALLS_ENDPOINT_RESOURCE}/${this.callId}`,
|
|
@@ -1528,7 +1548,7 @@ export class Call extends Eventing {
|
|
|
1528
1548
|
default: {
|
|
1529
1549
|
log.warn(`Unknown type for PUT request: ${type}`, {
|
|
1530
1550
|
file: CALL_FILE,
|
|
1531
|
-
method:
|
|
1551
|
+
method: METHODS.POST_SS_REQUEST,
|
|
1532
1552
|
});
|
|
1533
1553
|
}
|
|
1534
1554
|
}
|
|
@@ -1556,7 +1576,7 @@ export class Call extends Eventing {
|
|
|
1556
1576
|
if (transferType === TransferType.BLIND && transferTarget) {
|
|
1557
1577
|
log.info(`Initiating Blind transfer with : ${transferTarget}`, {
|
|
1558
1578
|
file: CALL_FILE,
|
|
1559
|
-
method:
|
|
1579
|
+
method: METHODS.COMPLETE_TRANSFER,
|
|
1560
1580
|
});
|
|
1561
1581
|
const context = {
|
|
1562
1582
|
transferorCallId: this.getCallId(),
|
|
@@ -1564,28 +1584,33 @@ export class Call extends Eventing {
|
|
|
1564
1584
|
};
|
|
1565
1585
|
try {
|
|
1566
1586
|
await this.postSSRequest(context, SUPPLEMENTARY_SERVICES.TRANSFER);
|
|
1587
|
+
log.info(`Blind Transfer completed for correlationId ${this.getCorrelationId()}`, {
|
|
1588
|
+
file: CALL_FILE,
|
|
1589
|
+
method: METHODS.COMPLETE_TRANSFER,
|
|
1590
|
+
});
|
|
1567
1591
|
this.metricManager.submitCallMetric(METRIC_EVENT.CALL, TRANSFER_ACTION.BLIND, METRIC_TYPE.BEHAVIORAL, this.getCallId(), this.getCorrelationId(), undefined);
|
|
1568
1592
|
}
|
|
1569
1593
|
catch (e) {
|
|
1570
1594
|
log.warn(`Blind Transfer failed for correlationId ${this.getCorrelationId()}`, {
|
|
1571
1595
|
file: CALL_FILE,
|
|
1572
|
-
method:
|
|
1596
|
+
method: METHODS.COMPLETE_TRANSFER,
|
|
1573
1597
|
});
|
|
1574
1598
|
const errData = e;
|
|
1575
1599
|
handleCallErrors((error) => {
|
|
1576
1600
|
this.emit(CALL_EVENT_KEYS.TRANSFER_ERROR, error);
|
|
1577
1601
|
this.submitCallErrorMetric(error, TRANSFER_ACTION.BLIND);
|
|
1578
|
-
}, ERROR_LAYER.CALL_CONTROL, (interval) => undefined, this.getCorrelationId(), errData,
|
|
1602
|
+
}, ERROR_LAYER.CALL_CONTROL, (interval) => undefined, this.getCorrelationId(), errData, METHODS.COMPLETE_TRANSFER, CALL_FILE);
|
|
1579
1603
|
await uploadLogs({
|
|
1580
1604
|
correlationId: this.correlationId,
|
|
1581
1605
|
callId: this.callId,
|
|
1606
|
+
broadworksCorrelationInfo: this.broadworksCorrelationInfo,
|
|
1582
1607
|
});
|
|
1583
1608
|
}
|
|
1584
1609
|
}
|
|
1585
1610
|
else if (transferType === TransferType.CONSULT && transferCallId) {
|
|
1586
1611
|
log.info(`Initiating Consult transfer between : ${this.callId} and ${transferCallId}`, {
|
|
1587
1612
|
file: CALL_FILE,
|
|
1588
|
-
method:
|
|
1613
|
+
method: METHODS.COMPLETE_TRANSFER,
|
|
1589
1614
|
});
|
|
1590
1615
|
const context = {
|
|
1591
1616
|
transferorCallId: this.getCallId(),
|
|
@@ -1593,28 +1618,33 @@ export class Call extends Eventing {
|
|
|
1593
1618
|
};
|
|
1594
1619
|
try {
|
|
1595
1620
|
await this.postSSRequest(context, SUPPLEMENTARY_SERVICES.TRANSFER);
|
|
1621
|
+
log.info(`Consult Transfer completed for correlationId ${this.getCorrelationId()}`, {
|
|
1622
|
+
file: CALL_FILE,
|
|
1623
|
+
method: METHODS.COMPLETE_TRANSFER,
|
|
1624
|
+
});
|
|
1596
1625
|
this.metricManager.submitCallMetric(METRIC_EVENT.CALL, TRANSFER_ACTION.CONSULT, METRIC_TYPE.BEHAVIORAL, this.getCallId(), this.getCorrelationId(), undefined);
|
|
1597
1626
|
}
|
|
1598
1627
|
catch (e) {
|
|
1599
1628
|
log.warn(`Consult Transfer failed for correlationId ${this.getCorrelationId()}`, {
|
|
1600
1629
|
file: CALL_FILE,
|
|
1601
|
-
method:
|
|
1630
|
+
method: METHODS.COMPLETE_TRANSFER,
|
|
1602
1631
|
});
|
|
1603
1632
|
const errData = e;
|
|
1604
1633
|
handleCallErrors((error) => {
|
|
1605
1634
|
this.emit(CALL_EVENT_KEYS.TRANSFER_ERROR, error);
|
|
1606
1635
|
this.submitCallErrorMetric(error, TRANSFER_ACTION.CONSULT);
|
|
1607
|
-
}, ERROR_LAYER.CALL_CONTROL, (interval) => undefined, this.getCorrelationId(), errData,
|
|
1636
|
+
}, ERROR_LAYER.CALL_CONTROL, (interval) => undefined, this.getCorrelationId(), errData, METHODS.COMPLETE_TRANSFER, CALL_FILE);
|
|
1608
1637
|
await uploadLogs({
|
|
1609
1638
|
correlationId: this.correlationId,
|
|
1610
1639
|
callId: this.callId,
|
|
1640
|
+
broadworksCorrelationInfo: this.broadworksCorrelationInfo,
|
|
1611
1641
|
});
|
|
1612
1642
|
}
|
|
1613
1643
|
}
|
|
1614
1644
|
else {
|
|
1615
1645
|
log.warn(`Invalid information received, transfer failed for correlationId: ${this.getCorrelationId()}`, {
|
|
1616
1646
|
file: CALL_FILE,
|
|
1617
|
-
method:
|
|
1647
|
+
method: METHODS.COMPLETE_TRANSFER,
|
|
1618
1648
|
});
|
|
1619
1649
|
}
|
|
1620
1650
|
}
|
|
@@ -1677,13 +1707,13 @@ export class Call extends Eventing {
|
|
|
1677
1707
|
case RoapScenario.OFFER: {
|
|
1678
1708
|
log.info(`before modifying sdp: ${event.roapMessage.sdp}`, {
|
|
1679
1709
|
file: CALL_FILE,
|
|
1680
|
-
method:
|
|
1710
|
+
method: METHODS.MEDIA_ROAP_EVENTS_LISTENER,
|
|
1681
1711
|
});
|
|
1682
1712
|
event.roapMessage.sdp = modifySdpForIPv4(event.roapMessage.sdp);
|
|
1683
1713
|
const sdpVideoPortZero = event.roapMessage.sdp.replace(/^m=(video) (?:\d+) /gim, 'm=$1 0 ');
|
|
1684
1714
|
log.info(`after modification sdp: ${sdpVideoPortZero}`, {
|
|
1685
1715
|
file: CALL_FILE,
|
|
1686
|
-
method:
|
|
1716
|
+
method: METHODS.MEDIA_ROAP_EVENTS_LISTENER,
|
|
1687
1717
|
});
|
|
1688
1718
|
event.roapMessage.sdp = sdpVideoPortZero;
|
|
1689
1719
|
this.localRoapMessage = event.roapMessage;
|
|
@@ -45,7 +45,7 @@ export const DUMMY_MOBIUS_URL = 'https://mobius.aintgen-a-1.int.infra.webex.com/
|
|
|
45
45
|
export const IP_ENDPOINT = 'myip';
|
|
46
46
|
export const INITIAL_SEQ_NUMBER = 1;
|
|
47
47
|
export const MEDIA_ENDPOINT_RESOURCE = 'media';
|
|
48
|
-
export const NETWORK_FLAP_TIMEOUT =
|
|
48
|
+
export const NETWORK_FLAP_TIMEOUT = 5000;
|
|
49
49
|
export const CALL_HOLD_SERVICE = 'callhold';
|
|
50
50
|
export const CALL_TRANSFER_SERVICE = 'calltransfer';
|
|
51
51
|
export const HOLD_ENDPOINT = 'hold';
|
|
@@ -61,7 +61,7 @@ export const WEB_AGENT = '(web)';
|
|
|
61
61
|
export const WEBEX = 'webex';
|
|
62
62
|
export const WEBEX_WEB_CLIENT = 'webex-web-client';
|
|
63
63
|
export const CALLER_ID_FILE = 'CallerId';
|
|
64
|
-
export const UTILS_FILE = '
|
|
64
|
+
export const UTILS_FILE = 'src/common/Utils.ts';
|
|
65
65
|
export const CALLING_CLIENT_FILE = 'CallingClient';
|
|
66
66
|
export const LINE_FILE = 'line';
|
|
67
67
|
export const CALL_FILE = 'call';
|
|
@@ -115,7 +115,6 @@ export const KEEPALIVE_UTIL = 'startKeepaliveTimer';
|
|
|
115
115
|
export const FAILBACK_UTIL = 'executeFailback';
|
|
116
116
|
export const REG_429_RETRY_UTIL = 'handle429Retry';
|
|
117
117
|
export const FAILOVER_UTIL = 'startFailoverTimer';
|
|
118
|
-
export const NETWORK_CHANGE_DETECTION_UTIL = 'detectNetworkChange';
|
|
119
118
|
export const CALLS_CLEARED_HANDLER_UTIL = 'callsClearedHandler';
|
|
120
119
|
export const RECONNECT_UTIL = 'reconnectOnFailure';
|
|
121
120
|
export const NOISE_REDUCTION_EFFECT = 'noise-reduction-effect';
|
|
@@ -148,6 +147,7 @@ export const METHODS = {
|
|
|
148
147
|
HANDLE_OUTGOING_ROAP_ANSWER: 'handleOutgoingRoapAnswer',
|
|
149
148
|
HANDLE_INCOMING_ROAP_OFFER: 'handleIncomingRoapOffer',
|
|
150
149
|
HANDLE_INCOMING_ROAP_ANSWER: 'handleIncomingRoapAnswer',
|
|
150
|
+
INIT: 'init',
|
|
151
151
|
FORCE_SEND_STATS_REPORT: 'forceSendStatsReport',
|
|
152
152
|
UPDATE_ACTIVE_MOBIUS: 'updateActiveMobius',
|
|
153
153
|
DEQUEUE_WS_EVENTS: 'dequeueWsEvents',
|
|
@@ -199,6 +199,7 @@ export const METHODS = {
|
|
|
199
199
|
GET_CALL_RTP_STATS: 'getCallRtpStats',
|
|
200
200
|
REGISTER: 'register',
|
|
201
201
|
DEREGISTER: 'deregister',
|
|
202
|
+
DELETE_REGISTRATION: 'deleteRegistration',
|
|
202
203
|
NORMALIZE_LINE: 'normalizeLine',
|
|
203
204
|
LINE_EMITTER: 'lineEmitter',
|
|
204
205
|
GET_LOGGING_LEVEL: 'getLoggingLevel',
|
|
@@ -210,7 +211,10 @@ export const METHODS = {
|
|
|
210
211
|
SET_MOBIUS_SERVERS: 'setMobiusServers',
|
|
211
212
|
HANDLE_CONNECTION_RESTORATION: 'handleConnectionRestoration',
|
|
212
213
|
RECONNECT_ON_FAILURE: 'reconnectOnFailure',
|
|
213
|
-
|
|
214
|
+
MERCURY_OFFLINE: 'handleMercuryOffline',
|
|
215
|
+
MERCURY_ONLINE: 'handleMercuryOnline',
|
|
216
|
+
NETWORK_OFFLINE: 'handleNetworkOffline',
|
|
217
|
+
NETWORK_ONLINE: 'handleNetworkOnline',
|
|
214
218
|
GET_CLIENT_REGION_INFO: 'getClientRegionInfo',
|
|
215
219
|
GET_MOBIUS_SERVERS: 'getMobiusServers',
|
|
216
220
|
REGISTER_CALLS_CLEARED_LISTENER: 'registerCallsClearedListener',
|
|
@@ -69,9 +69,6 @@ export default class Line extends Eventing {
|
|
|
69
69
|
this.registration.setMobiusServers(this.#primaryMobiusUris, this.#backupMobiusUris);
|
|
70
70
|
await this.registration.triggerRegistration();
|
|
71
71
|
});
|
|
72
|
-
if (this.mobiusDeviceId) {
|
|
73
|
-
this.callManager.updateLine(this.mobiusDeviceId, this);
|
|
74
|
-
}
|
|
75
72
|
}
|
|
76
73
|
async deregister() {
|
|
77
74
|
log.info(METHOD_START_MESSAGE, {
|
|
@@ -93,6 +90,9 @@ export default class Line extends Eventing {
|
|
|
93
90
|
this.rehomingIntervalMax = rehomingIntervalMax;
|
|
94
91
|
this.voicePortalNumber = voicePortalNumber;
|
|
95
92
|
this.voicePortalExtension = voicePortalExtension;
|
|
93
|
+
if (this.mobiusDeviceId) {
|
|
94
|
+
this.callManager.updateLine(this.mobiusDeviceId, this);
|
|
95
|
+
}
|
|
96
96
|
}
|
|
97
97
|
lineEmitter = (event, deviceInfo, lineError) => {
|
|
98
98
|
log.info(METHOD_START_MESSAGE, {
|