in src/hooks/sdk/useAttendeeAudioStatus.tsx [8:42]
export function useAttendeeAudioStatus(attendeeId: string) {
const audioVideo = useAudioVideo();
const [muted, setMuted] = useState(false);
const [signalStrength, setSignalStrength] = useState(1);
useEffect(() => {
if (!audioVideo) {
return;
}
const callback = (
_: string,
__: number | null,
muted: boolean | null,
signalStrength: number | null
): void => {
if (muted !== null) {
setMuted(muted);
}
if (signalStrength !== null) {
setSignalStrength(signalStrength);
}
};
audioVideo.realtimeSubscribeToVolumeIndicator(attendeeId, callback);
return () =>
audioVideo.realtimeUnsubscribeFromVolumeIndicator(attendeeId, callback);
}, [audioVideo, attendeeId]);
return {
muted,
signalStrength,
};
}