From c9f0e9967888bd114761b3786ee9b1794563644a Mon Sep 17 00:00:00 2001 From: Max Heimbrock <43608204+MaxHeimbrock@users.noreply.github.com> Date: Fri, 7 Aug 2026 12:43:39 +0200 Subject: [PATCH 1/2] Adds waiting for agent text if no remote agent joined yet --- app/assistant/ui/AgentVisualization.tsx | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/app/assistant/ui/AgentVisualization.tsx b/app/assistant/ui/AgentVisualization.tsx index df68e67..77a9748 100644 --- a/app/assistant/ui/AgentVisualization.tsx +++ b/app/assistant/ui/AgentVisualization.tsx @@ -1,10 +1,11 @@ -import { useAgent } from '@livekit/components-react'; +import { useAgent, useRemoteParticipants } from '@livekit/components-react'; import { BarVisualizer, VideoTrack } from '@livekit/react-native'; import React, { useCallback, useState } from 'react'; import { LayoutChangeEvent, StyleProp, StyleSheet, + Text, View, ViewStyle, } from 'react-native'; @@ -17,6 +18,8 @@ const barSize = 0.2; export default function AgentVisualization({ style }: AgentVisualizationProps) { const { state, microphoneTrack, cameraTrack } = useAgent(); + const remoteParticipants = useRemoteParticipants(); + const hasAgent = remoteParticipants.some((participant) => participant.isAgent); const [barWidth, setBarWidth] = useState(0); const [barBorderRadius, setBarBorderRadius] = useState(0); @@ -46,6 +49,7 @@ export default function AgentVisualization({ style }: AgentVisualizationProps) { style={styles.barVisualizer} /> + {!hasAgent && Waiting for agent} {videoView} ); @@ -71,4 +75,10 @@ const styles = StyleSheet.create({ width: '100%', height: '100%', }, + waitingText: { + position: 'absolute', + top: '68%', + color: '#FFFFFF', + fontSize: 16, + }, }); From 663f16c089f32c90f6d943f46ad3e6511f75e96a Mon Sep 17 00:00:00 2001 From: Max Heimbrock <43608204+MaxHeimbrock@users.noreply.github.com> Date: Fri, 7 Aug 2026 12:48:06 +0200 Subject: [PATCH 2/2] linting --- app/assistant/ui/AgentVisualization.tsx | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/app/assistant/ui/AgentVisualization.tsx b/app/assistant/ui/AgentVisualization.tsx index 77a9748..fd54189 100644 --- a/app/assistant/ui/AgentVisualization.tsx +++ b/app/assistant/ui/AgentVisualization.tsx @@ -19,7 +19,9 @@ const barSize = 0.2; export default function AgentVisualization({ style }: AgentVisualizationProps) { const { state, microphoneTrack, cameraTrack } = useAgent(); const remoteParticipants = useRemoteParticipants(); - const hasAgent = remoteParticipants.some((participant) => participant.isAgent); + const hasAgent = remoteParticipants.some( + (participant) => participant.isAgent + ); const [barWidth, setBarWidth] = useState(0); const [barBorderRadius, setBarBorderRadius] = useState(0);