diff --git a/app/providers/CallProvider/CallProvider.tsx b/app/providers/CallProvider/CallProvider.tsx index 8098a71..92753a7 100644 --- a/app/providers/CallProvider/CallProvider.tsx +++ b/app/providers/CallProvider/CallProvider.tsx @@ -323,6 +323,13 @@ export function CallProvider(props : CallProviderProps) { peerConnectionRef.current.onconnectionstatechange = () => { console.info("Peer connection state changed: " + peerConnectionRef.current?.connectionState); if(peerConnectionRef.current?.connectionState == "connected"){ + /** + * WebRTC соединение установлено, звонок активен, останавливаем все остальные звуки + * системы + */ + stopLoopSound(); + stopSound(); + setCallState(CallState.ACTIVE); info("WebRTC connection established, call is active"); } @@ -432,8 +439,13 @@ export function CallProvider(props : CallProviderProps) { } const end = () => { - stopLoopSound(); - stopSound(); + if(callState == CallState.ACTIVE){ + /** + * Только если звонок был активен воспроизводим звуки + */ + stopLoopSound(); + stopSound(); + } if (remoteAudioRef.current) { remoteAudioRef.current.pause(); remoteAudioRef.current.srcObject = null;