apply timeLimit feature

This commit is contained in:
Dave Horton
2025-01-14 14:36:59 -05:00
parent a4c0839882
commit 2bf4fb906b
5 changed files with 92 additions and 10 deletions

View File

@@ -1172,6 +1172,11 @@ class CallSession extends Emitter {
this.wakeupResolver({reason: 'session ended'});
this.wakeupResolver = null;
}
if (this._maxCallDurationTimer) {
clearTimeout(this._maxCallDurationTimer);
this._maxCallDurationTimer = null;
}
}
/**
@@ -2680,6 +2685,19 @@ Duration=${duration} `
this.verbHookSpan = null;
}
}
/**
* _onMaxCallDuration - called when the call has reached the maximum duration
*/
_onMaxCallDuration() {
this.logger.info(`callSession:_onMaxCallDuration tearing down call as it has reached ${this.timeLimit}s`);
if (!this.dlg) {
this.logger.debug('CallSession:_onMaxCallDuration - no dialog, call already gone');
return;
}
this._jambonzHangup('Max Call Duration');
this._maxCallDurationTimer = null;
}
}
module.exports = CallSession;