@webex/calling 3.10.0-next.12 → 3.10.0-next.13

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.
@@ -52,7 +52,6 @@ export class Call extends Eventing {
52
52
  localAudioStream;
53
53
  rtcMetrics;
54
54
  callKeepaliveRetryCount = 0;
55
- callKeepaliveInterval;
56
55
  isMuted() {
57
56
  return this.muted;
58
57
  }
@@ -963,60 +962,70 @@ export class Call extends Eventing {
963
962
  this.sendMediaStateMachineEvt({ type: 'E_ROAP_TEARDOWN' });
964
963
  this.sendCallStateMachineEvt({ type: 'E_CALL_CLEARED' });
965
964
  }
966
- handleCallEstablished(event) {
967
- const loggerContext = {
968
- file: CALL_FILE,
969
- method: METHODS.HANDLE_CALL_ESTABLISHED,
970
- };
971
- log.info(`${METHOD_START_MESSAGE} with: ${this.getCorrelationId()}`, loggerContext);
972
- this.emit(CALL_EVENT_KEYS.ESTABLISHED, this.correlationId);
973
- this.earlyMedia = false;
974
- this.connected = true;
965
+ callKeepaliveRetryCallback = (interval) => {
966
+ if (this.callKeepaliveRetryCount === MAX_CALL_KEEPALIVE_RETRY_COUNT) {
967
+ log.warn(`Max keepalive retry attempts reached. Aborting call keepalive for callId: ${this.callId}`, {
968
+ file: CALL_FILE,
969
+ method: 'keepaliveRetryCallback',
970
+ });
971
+ return;
972
+ }
973
+ this.callKeepaliveRetryCount += 1;
974
+ setTimeout(async () => {
975
+ try {
976
+ await this.postStatus();
977
+ this.scheduleCallKeepaliveInterval();
978
+ }
979
+ catch (err) {
980
+ await this.handleCallKeepaliveError(err);
981
+ }
982
+ }, interval * 1000);
983
+ };
984
+ handleCallKeepaliveError = async (err) => {
985
+ const error = err;
975
986
  if (this.sessionTimer) {
976
- log.log('Resetting session timer', loggerContext);
977
987
  clearInterval(this.sessionTimer);
978
988
  }
989
+ const abort = await handleCallErrors((callError) => {
990
+ this.emit(CALL_EVENT_KEYS.CALL_ERROR, callError);
991
+ this.submitCallErrorMetric(callError);
992
+ }, ERROR_LAYER.CALL_CONTROL, this.callKeepaliveRetryCallback, this.getCorrelationId(), error, 'handleCallEstablished', CALL_FILE);
993
+ if (abort) {
994
+ this.sendCallStateMachineEvt({ type: 'E_SEND_CALL_DISCONNECT' });
995
+ this.emit(CALL_EVENT_KEYS.DISCONNECT, this.getCorrelationId());
996
+ this.callKeepaliveRetryCount = 0;
997
+ }
998
+ await uploadLogs({
999
+ correlationId: this.correlationId,
1000
+ callId: this.callId,
1001
+ broadworksCorrelationInfo: this.broadworksCorrelationInfo,
1002
+ });
1003
+ };
1004
+ scheduleCallKeepaliveInterval = () => {
1005
+ const loggerContext = {
1006
+ file: CALL_FILE,
1007
+ method: 'scheduleCallKeepaliveInterval',
1008
+ };
979
1009
  this.sessionTimer = setInterval(async () => {
980
1010
  try {
981
1011
  const res = await this.postStatus();
982
- this.callKeepaliveRetryCount = 0;
983
- this.callKeepaliveInterval = undefined;
984
1012
  log.info(`Session refresh successful`, loggerContext);
985
1013
  }
986
1014
  catch (err) {
987
- const error = err;
988
- if (this.sessionTimer) {
989
- clearInterval(this.sessionTimer);
990
- }
991
- const abort = await handleCallErrors((callError) => {
992
- this.emit(CALL_EVENT_KEYS.CALL_ERROR, callError);
993
- this.submitCallErrorMetric(callError);
994
- }, ERROR_LAYER.CALL_CONTROL, (interval) => {
995
- this.callKeepaliveRetryCount += 1;
996
- this.callKeepaliveInterval = interval * 1000;
997
- if (this.callKeepaliveRetryCount === MAX_CALL_KEEPALIVE_RETRY_COUNT) {
998
- this.callKeepaliveRetryCount = 0;
999
- clearInterval(this.sessionTimer);
1000
- this.sessionTimer = undefined;
1001
- this.callKeepaliveInterval = undefined;
1002
- log.warn(`Max call keepalive retry attempts reached for call: ${this.getCorrelationId()}`, loggerContext);
1003
- return;
1004
- }
1005
- this.sendCallStateMachineEvt({ type: 'E_CALL_ESTABLISHED' });
1006
- }, this.getCorrelationId(), error, 'handleCallEstablished', CALL_FILE);
1007
- if (abort) {
1008
- this.sendCallStateMachineEvt({ type: 'E_SEND_CALL_DISCONNECT' });
1009
- this.emit(CALL_EVENT_KEYS.DISCONNECT, this.getCorrelationId());
1010
- this.callKeepaliveRetryCount = 0;
1011
- this.callKeepaliveInterval = undefined;
1012
- }
1013
- await uploadLogs({
1014
- correlationId: this.correlationId,
1015
- callId: this.callId,
1016
- broadworksCorrelationInfo: this.broadworksCorrelationInfo,
1017
- });
1015
+ await this.handleCallKeepaliveError(err);
1018
1016
  }
1019
- }, this.callKeepaliveInterval || DEFAULT_SESSION_TIMER);
1017
+ }, DEFAULT_SESSION_TIMER);
1018
+ };
1019
+ handleCallEstablished(event) {
1020
+ const loggerContext = {
1021
+ file: CALL_FILE,
1022
+ method: METHODS.HANDLE_CALL_ESTABLISHED,
1023
+ };
1024
+ log.info(`${METHOD_START_MESSAGE} with: ${this.getCorrelationId()}`, loggerContext);
1025
+ this.emit(CALL_EVENT_KEYS.ESTABLISHED, this.correlationId);
1026
+ this.earlyMedia = false;
1027
+ this.connected = true;
1028
+ this.scheduleCallKeepaliveInterval();
1020
1029
  }
1021
1030
  async handleUnknownState(event) {
1022
1031
  log.info(`${METHOD_START_MESSAGE} with: ${this.getCorrelationId()}`, {
@@ -39,7 +39,6 @@ export declare class Call extends Eventing<CallEventTypes> implements ICall {
39
39
  private localAudioStream?;
40
40
  private rtcMetrics;
41
41
  private callKeepaliveRetryCount;
42
- private callKeepaliveInterval?;
43
42
  isMuted(): boolean;
44
43
  isConnected(): boolean;
45
44
  isHeld(): boolean;
@@ -55,6 +54,9 @@ export declare class Call extends Eventing<CallEventTypes> implements ICall {
55
54
  private handleOutgoingCallConnect;
56
55
  private handleIncomingCallDisconnect;
57
56
  private handleOutgoingCallDisconnect;
57
+ private callKeepaliveRetryCallback;
58
+ private handleCallKeepaliveError;
59
+ private scheduleCallKeepaliveInterval;
58
60
  private handleCallEstablished;
59
61
  private handleUnknownState;
60
62
  private getEmitterCallback;
@@ -1 +1 @@
1
- {"version":3,"file":"call.d.ts","sourceRoot":"","sources":["../../../../src/CallingClient/calling/call.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"call.d.ts","sourceRoot":"","sources":["../../../../src/CallingClient/calling/call.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -132,5 +132,5 @@
132
132
  "staticpath": "docs",
133
133
  "noprompt": true
134
134
  },
135
- "version": "3.10.0-next.12"
135
+ "version": "3.10.0-next.13"
136
136
  }