Display transcriptions even when Agent is not publishing audio (#70)
This commit is contained in:
parent
67f3787c0b
commit
fa9c343282
@ -1,7 +1,7 @@
|
|||||||
"use client";
|
"use client";
|
||||||
|
|
||||||
import { LoadingSVG } from "@/components/button/LoadingSVG";
|
import { LoadingSVG } from "@/components/button/LoadingSVG";
|
||||||
import { ChatMessageType, ChatTile } from "@/components/chat/ChatTile";
|
import { ChatMessageType } from "@/components/chat/ChatTile";
|
||||||
import { ColorPicker } from "@/components/colorPicker/ColorPicker";
|
import { ColorPicker } from "@/components/colorPicker/ColorPicker";
|
||||||
import { AudioInputTile } from "@/components/config/AudioInputTile";
|
import { AudioInputTile } from "@/components/config/AudioInputTile";
|
||||||
import { ConfigurationPanelItem } from "@/components/config/ConfigurationPanelItem";
|
import { ConfigurationPanelItem } from "@/components/config/ConfigurationPanelItem";
|
||||||
@ -17,6 +17,7 @@ import { useConfig } from "@/hooks/useConfig";
|
|||||||
import { useMultibandTrackVolume } from "@/hooks/useTrackVolume";
|
import { useMultibandTrackVolume } from "@/hooks/useTrackVolume";
|
||||||
import { TranscriptionTile } from "@/transcriptions/TranscriptionTile";
|
import { TranscriptionTile } from "@/transcriptions/TranscriptionTile";
|
||||||
import {
|
import {
|
||||||
|
TrackReferenceOrPlaceholder,
|
||||||
VideoTrack,
|
VideoTrack,
|
||||||
useConnectionState,
|
useConnectionState,
|
||||||
useDataChannel,
|
useDataChannel,
|
||||||
@ -74,11 +75,20 @@ export default function Playground({
|
|||||||
}
|
}
|
||||||
}, [config, localParticipant, roomState]);
|
}, [config, localParticipant, roomState]);
|
||||||
|
|
||||||
const agentAudioTrack = tracks.find(
|
let agentAudioTrack: TrackReferenceOrPlaceholder | undefined;
|
||||||
|
const aat = tracks.find(
|
||||||
(trackRef) =>
|
(trackRef) =>
|
||||||
trackRef.publication.kind === Track.Kind.Audio &&
|
trackRef.publication.kind === Track.Kind.Audio &&
|
||||||
trackRef.participant.isAgent
|
trackRef.participant.isAgent
|
||||||
);
|
);
|
||||||
|
if (aat) {
|
||||||
|
agentAudioTrack = aat;
|
||||||
|
} else if (agentParticipant) {
|
||||||
|
agentAudioTrack = {
|
||||||
|
participant: agentParticipant,
|
||||||
|
source: Track.Source.Microphone,
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
const agentVideoTrack = tracks.find(
|
const agentVideoTrack = tracks.find(
|
||||||
(trackRef) =>
|
(trackRef) =>
|
||||||
@ -87,7 +97,7 @@ export default function Playground({
|
|||||||
);
|
);
|
||||||
|
|
||||||
const subscribedVolumes = useMultibandTrackVolume(
|
const subscribedVolumes = useMultibandTrackVolume(
|
||||||
agentAudioTrack?.publication.track,
|
agentAudioTrack?.publication?.track,
|
||||||
5
|
5
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|||||||
@ -1,7 +1,5 @@
|
|||||||
import { ChatMessageType, ChatTile } from "@/components/chat/ChatTile";
|
import { ChatMessageType, ChatTile } from "@/components/chat/ChatTile";
|
||||||
import {
|
import {
|
||||||
Chat,
|
|
||||||
ChatMessage as ComponentsChatMessage,
|
|
||||||
TrackReferenceOrPlaceholder,
|
TrackReferenceOrPlaceholder,
|
||||||
useChat,
|
useChat,
|
||||||
useLocalParticipant,
|
useLocalParticipant,
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user