import React, { useState, useEffect } from 'react'; import './App.css'; function App() { const [isConnected, setIsConnected] = useState(false); const [messages, setMessages] = useState([]); const [inputMessage, setInputMessage] = useState(''); const [agentType, setAgentType] = useState('intent'); const [loading, setLoading] = useState(false); const [serverUrl, setServerUrl] = useState('http://localhost:8080'); // Test different agent endpoints const agentEndpoints = { intent: '/api/intent', order: '/api/order', support: '/api/support' }; const testServerConnection = async () => { try { const response = await fetch(`${serverUrl}/health`); if (response.ok) { setIsConnected(true); addMessage('System', 'Connected to AI Agent server'); } else { setIsConnected(false); addMessage('System', 'Server not responding'); } } catch (error) { setIsConnected(false); addMessage('System', `Connection failed: ${error.message}`); } }; const addMessage = (sender, content) => { setMessages(prev => [...prev, { id: Date.now(), sender, content, timestamp: new Date().toLocaleTimeString() }]); }; const testAgent = async () => { if (!inputMessage.trim()) return; setLoading(true); addMessage('User', inputMessage); try { let requestBody; // Prepare request based on agent type switch (agentType) { case 'intent': requestBody = { query: inputMessage }; break; case 'order': requestBody = { customerId: 'test-customer-123', productId: 'test-product-456', quantity: 1, paymentMethod: 'card' }; break; case 'support': requestBody = { customerId: 'test-customer-123', query: inputMessage, channel: 'chat' }; break; default: requestBody = { query: inputMessage }; } const response = await fetch(`${serverUrl}${agentEndpoints[agentType]}`, { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify(requestBody) }); const data = await response.json(); if (response.ok) { addMessage(`${agentType} Agent`, JSON.stringify(data, null, 2)); } else { addMessage('Error', `Request failed: ${data.error || 'Unknown error'}`); } } catch (error) { addMessage('Error', `Network error: ${error.message}`); } finally { setLoading(false); setInputMessage(''); } }; const clearMessages = () => { setMessages([]); }; useEffect(() => { testServerConnection(); }, [serverUrl]); return (

AI Agent System Tester

setServerUrl(e.target.value)} style={{ marginLeft: '10px', padding: '5px', width: '300px' }} />
Status: {isConnected ? 'Connected' : 'Disconnected'}
{/* Control Panel */}

Test Configuration