Sobes.tech
Principal

Yazma göstəricisini necə həyata keçirdiniz?

sobes.tech Süni İntellekt

AI-dan cavab

Yazma göstəricisi (typing indicator) adətən müştərilər və server arasında real vaxt hadisələri vasitəsilə həyata keçirilir.

Tətbiq nümunəsi:

  1. Müştəri yazmağa başlayanda, "user_typing" hadisəsini serverə (WebSocket və ya başqa protokol vasitəsilə) göndərir.
  2. Server bu hadisəni digər chat iştirakçılarına yayır.
  3. Hadisəni alan müştərilər "İstifadəçi yazır..." göstəricisini göstərir.
  4. İstifadəçi yazmağı dayandırdıqda (timeout və ya "stop_typing" hadisəsi ilə), müvafiq hadisə göndərilir və göstərici gizlənir.

JavaScript və WebSocket istifadə edərək nümunə:

// Müştəri
let typingTimeout;
inputField.addEventListener('input', () => {
  socket.send(JSON.stringify({ type: 'user_typing', userId }));
  clearTimeout(typingTimeout);
  typingTimeout = setTimeout(() => {
    socket.send(JSON.stringify({ type: 'stop_typing', userId }));
  }, 3000); // Son girişdən 3 saniyə sonra
});

// Server hadisələri digər müştərilərə yayır

Bu şəkildə, başlanğıc və son yazma hadisələri real vaxtda ötürülür və göstərici işləyir.