Il plugin di chat non comprende il messo a fuoco della scheda

In sostanza, il plugin della chat non tiene conto se la scheda del browser è attualmente focalizzata/attiva.

Impatto

Notifiche perse e conteggio non letto mancante nella barra del titolo.

Passaggi di riproduzione

Testato in Firefox sull’ultima versione 3.5.0.beta2-dev

  1. Utente A + B è loggato in Discourse e si scambia messaggi diretti utilizzando il plugin della chat.
  2. L’utente A ha la chat aperta, ma in un’altra scheda.
  3. L’utente B invia un messaggio all’utente A.
  4. La scheda dell’utente A mostra brevemente “(1)” per indicare il nuovo messaggio, ma lo nasconde rapidamente un secondo dopo.
  5. L’utente A non riceve una notifica desktop.

Nota: Se l’utente A non ha la finestra della chat aperta ma è comunque su Discourse, il “(1)” nella barra del titolo rimane correttamente e viene visualizzata una notifica di sistema.

Comportamento atteso

Se la scheda non è visibile/focalizzata (sia perché è la scheda #29 o è nascosta dietro diverse altre finestre), come utente voglio ricevere una notifica.


Grazie!

2 Mi Piace

Ciao, grazie per la segnalazione.

Ho alcune domande che aiuteranno nel debug.

  • In questa situazione, Discourse è aperto nella scheda attiva (senza chat aperta)?

  • Stai usando la chat a schermo intero o la modalità cassetto?

In questo caso, la notifica desktop è il badge verde sull’icona della chat? O qualcos’altro?

1 Mi Piace

Nessun problema:

Per l’Utente A, la scheda attiva del browser è qualcos’altro (es: google). All’interno della scheda di Discourse, che non è attiva nel browser, la chat è aperta.

Sono sicuro al 90% di averlo visto in entrambi gli scenari, ma dovrò tornare indietro e ri-testare per sapere con certezza quale dei due (sto rispondendo ora in modo da poter condividere almeno le altre informazioni subito)

La notifica desktop è la notifica push che arriva attraverso il sistema operativo.

1 Mi Piace

Aggiornamento, ho confermato che si verifica sia in modalità a schermo intero che in modalità cassetto.

Il comportamento è diverso anche in Chrome: mostra un (3) che poi scende a (2).

Inoltre, in entrambi i browser, a volte semplicemente non viene trasmesso per 30 secondi (fino alla prossima richiesta di polling secondo il debugger di rete). Ma forse quella parte è solo un problema di connessione Internet.

Ho realizzato un video che dimostra il problema, allegato:

  • 0:08 Problema di ricezione in Firefox
  • 0:32 Problema di ricezione in Chrome
  • 0:50 Problema di aggiornamento lento