diff --git a/client/src/components/Interview/DemoInterview.js b/client/src/components/Interview/DemoInterview.js index 868b234..d221b36 100644 --- a/client/src/components/Interview/DemoInterview.js +++ b/client/src/components/Interview/DemoInterview.js @@ -33,9 +33,17 @@ const DemoInterview = () => { const audioStreamRef = useRef(null); const videoStreamRef = useRef(null); - const [showQuestions, setShowQuestions] = useState(false); - const [interviewStarted, setInterviewStarted] = useState(false); + const [interviewCompleted, setInterviewCompleted] = useState(false); + + // Select a random interviewer when the component loads + const [interviewer, setInterviewer] = useState(null); + + useEffect(() => { + const randomInterviewer = + INTERVIEWERS[Math.floor(Math.random() * INTERVIEWERS.length)]; + setInterviewer(randomInterviewer); + }, []); const demoQuestions = [ 'Tell me about your experience with React development.', @@ -58,6 +66,7 @@ const DemoInterview = () => { const startAudioStream = async () => { const micPermission = await checkPermissions('microphone'); if (micPermission === 'denied') { + setIsMuted(true); alert('Microphone access denied. Please enable it in browser settings.'); return; } @@ -73,6 +82,7 @@ const DemoInterview = () => { const startVideoStream = async () => { const cameraPermission = await checkPermissions('camera'); if (cameraPermission === 'denied') { + setIsVideoOff(true); alert('Camera access denied. Please enable it in browser settings.'); return; } @@ -367,6 +377,13 @@ const DemoInterview = () => { > Start Interview + {interviewer && !interviewStarted && ( +
+

Interviewer: {interviewer.name}

+

Provider: {interviewer.provider}

+

Email: {interviewer.email}

+
+ )} {interviewStarted && (
{ animation: 'pulse 2s infinite', }} >
- AI is listening... + {interviewer.name} is listening... )} @@ -431,39 +448,57 @@ const DemoInterview = () => { - {!interviewStarted && ( -
-

+ {!interviewStarted ? ( +
+

+ Interview Tips +

+
    +
  • + • Speak clearly and maintain good eye contact with the camera +
  • +
  • + • Take a moment to gather your thoughts before answering +
  • +
  • + • Provide specific examples to support your answers +
  • +
  • + • Keep your responses focused and concise +
  • +
+
+ ) : ( +

- -
- )} + Exit Interview + + )} + ); };