diff --git a/bot_direct.py b/bot_direct.py index 892eb02..1e5eca1 100644 --- a/bot_direct.py +++ b/bot_direct.py @@ -91,11 +91,14 @@ ws.onopen=()=>{recon=0;reconDelay=2000;s.textContent='🟢 Connecté — JARVIS ws.onclose=()=>{b.disabled=true;if(reconws.close(); +ws.onmessage=e=>{try{let d=JSON.parse(e.data);if(ws._tid){clearTimeout(ws._tid);ws._tid=null} +if(d.type==='welcome')m(d.content,'sys'); +else if(d.type==='response')m(d.content,'jarvis'); +else if(d.type==='thinking')s.textContent='🤔 JARVIS réfléchit...'; +else if(d.type==='error')m('❌ '+d.content,'sys')}catch(x){m(e.data,'jarvis')}; +s.textContent='🟢 Connecté — JARVIS v3 prêt';b.disabled=false}} function send(){let t=i.value.trim();if(!t||!ws||ws.readyState!==WebSocket.OPEN)return;m(t,'user');ws.send(JSON.stringify({text:t}));i.value='';b.disabled=true;s.textContent='🤔 JARVIS réfléchit...';let tid=setTimeout(()=>{if(b.disabled){b.disabled=false;s.textContent='⚠️ JARVIS prend du temps... tu peux réessayer'}},25000);ws._tid=tid} -ws.onmessage=e=>{try{let d=JSON.parse(e.data);if(ws._tid){clearTimeout(ws._tid);ws._tid=null};if(d.type==='welcome')m(d.content,'sys'); -else if(d.type==='response')m(d.content,'jarvis');else if(d.type==='thinking')s.textContent='🤔 JARVIS réfléchit...'; -else if(d.type==='error')m('❌ '+d.content,'sys')}catch(x){m(e.data,'jarvis')};s.textContent='🟢 Connecté — JARVIS v3 prêt';b.disabled=false} -function send(){let t=i.value.trim();if(!t||!ws||ws.readyState!==WebSocket.OPEN)return;m(t,'user');ws.send(JSON.stringify({text:t}));i.value='';b.disabled=true;s.textContent='🤔 JARVIS réfléchit...'} b.onclick=send;i.onkeydown=e=>{if(e.key==='Enter')send()};connect()