# La présence utilisateur ne met pas à jour le serveur lorsque l'utilisateur ou le navigateur est inactif

**URL:** https://meta.discourse.org/t/user-presence-is-not-updating-the-server-when-leaving-due-to-user-or-browser-inactivity/268103
**Category:** Bug
**Created:** [Juin 12, 2023, 11:14 UTC](https://meta.discourse.org/t/user-presence-is-not-updating-the-server-when-leaving-due-to-user-or-browser-inactivity/268103 "2023-06-12T23:14:19Z")
**Posts on this page:** 4
**Page:** 1

<div class="post-metadata">

### Author: ![AhmedLoud](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/ahmedloud/32/576547_2.png) [@AhmedLoud](https://meta.discourse.org/u/AhmedLoud)
#### Post date: [Juin 12, 2023, 11:14 UTC](https://meta.discourse.org/t/user-presence-is-not-updating-the-server-when-leaving-due-to-user-or-browser-inactivity/268103/1 "2023-06-12T23:14:19Z")

</div>

Lorsque, dans le même écran, nous n’entrons que des canaux qui ont tous la valeur par défaut `onlyWhenActive` (qui est par défaut `true` lors de l’appel de `channel.enter()`) → le mauvais appel est effectué au serveur lors de l’inactivité pour mettre à jour ces canaux

### Comment reproduire

- Désactivez d’abord le plugin de chat s’il est activé (c’est important car les plugins de chat effectuent un appel dans tous les écrans à `.enter({onlyWhenActive: false}` avec l’option `onlyWhenActive` définie sur `false`)

- Ajoutez un canal pour la démo. J’ai choisi `topic-presence-display.js` et j’ai ajouté ceci :

```js
  @on("init")
  _init() {
    this._presentChannel = this.presence.getChannel('/presence-idle-demo');
    this._presentChannel.enter();
  },

```

- Ouvrez n’importe quel sujet avec la console réseau du navigateur ouverte → vous devriez voir un premier appel à `/presence/update`

- Minimisez la fenêtre du navigateur (avec l’onglet réseau ouvert) et attendez un peu plus de 10 secondes (c’est le temps d’inactivité par défaut du navigateur)

- Rouvrez le navigateur et regardez le dernier appel effectué à `/presence/update`

Résultat actuel :

 ![image](https://global.discourse-cdn.com/meta/original/4X/1/1/1/1117428c429809664fc084667bd0c20379c47527.png)

Alors qu’il devrait s’agir de `leave_channels[]: /presence-idle-demo`

J’ai ouvert une pull request :

> <https://github.com/discourse/discourse/pull/22068>

---

<div class="post-metadata">

### Author: ![sam](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/sam/32/102149_2.png) [@sam](https://meta.discourse.org/u/sam)
#### Post date: [Juin 13, 2023, 6:28 UTC](https://meta.discourse.org/t/user-presence-is-not-updating-the-server-when-leaving-due-to-user-or-browser-inactivity/268103/4 "2023-06-13T06:28:04Z")

</div>

Félicitations pour le débogage minutieux et la découverte de la cause profonde… nous examinerons cela cette semaine et verrons si nous pouvons fusionner le correctif !

---

<div class="post-metadata">

### Author: ![zogstrip](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/zogstrip/32/512781_2.png) [@zogstrip](https://meta.discourse.org/u/zogstrip)
#### Post date: [Juillet 31, 2023, 8:50 UTC](https://meta.discourse.org/t/user-presence-is-not-updating-the-server-when-leaving-due-to-user-or-browser-inactivity/268103/9 "2023-07-31T08:50:01Z")

</div>

@david a mené ce projet à terme et il est maintenant fusionné 🎉

Merci @AhmedLoud d’avoir soulevé ce point et d’avoir soumis une PR 👏

---

<div class="post-metadata">

### Author: ![zogstrip](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/zogstrip/32/512781_2.png) [@zogstrip](https://meta.discourse.org/u/zogstrip)
#### Post date: [Juillet 31, 2023, 8:50 UTC](https://meta.discourse.org/t/user-presence-is-not-updating-the-server-when-leaving-due-to-user-or-browser-inactivity/268103/10 "2023-07-31T08:50:11Z")

</div>


