Forte latence sur changement du statut de géolocalisation App V2

Bonjour

J’utilise depuis quelque temps l’app mobile V2 en béta et je ne sais pas si c’est en lien avec une des 2 dernières mises à jour poussées les 6 et 7 Aout dernier, mais j’ai remarqué une très grande latence sur le changement de statut « présent/non présent » avec la géolocalisation.

A titre d’exemple, bien que je sois dans la zone verte (radius défini sur l’app), au niveau de Jeedom, le statut binaire se met à jour avec 5 à 10mn de retard. Alors quand on définit un radius de 200m, cela ne présente plus aucun intérêt.
A début je pensais que c’était ma localisation sur le téléphone qui n’était pas à jour, mais j’arrive très bien à suivre mon déplacement en temps réel sur l’app. C’est donc au niveau de l’app que le passage de 1 à 0 (ou inversement), ne se fait pas dans un délai convenable dès lors que l’on entre ou sort de la zone.
Autant que je me souvienne, avant ces mises à jour d’Août, le changement était quasi instantané.
Quelque chose aurait-il été modifié pour perturber le temps de réponse ?

Si jamais @Sekiro tu as une idée ou une suggestion à proposer, je suis preneur.

Merci

Bonjour

Pas de nouvelles à l’horizon ?
J’ai encore fait le triste constat ce matin.
Alors que j’étais chez moi depuis bien 2/3mn, la géolocalisation laissait toujours apparaître un cercle rouge comme quoi je n’étais pas dans la zone concernée.
Le petit point vert mentionnant que la localisation Jeedom App est activée, était bien affiché en haut à droite.
J’ai dû attendre encore 5/6mn avant que le binaire ne change d’état et que le cercle passe au vert.

Je n’arrive pas à reproduire

Les personnes qui test l’application en long et en large ne m’ont pas remontés ce souci, je leur ai demandé à ce sujet si ils avaient remarqué quelque chose

Edit : vu avec eux, latence par moment de leur coté

Tu es sur la dernière version de l’app publiée il y a peu ?
Je vais regarder du cote de la librairie de géolocalisation de l’application

1 « J'aime »

Bonsoir et merci de répondre.

l’App est du 16/08 et le plugin du 22/08.

J’ignore si c’est une coïncidence ou non, mais j’ai fait ce constat peu après les 2 mises à jour du plugin les 6 et 7 Août derniers.
Après je n’ai pas vérifié si l’App sous Android avait elle aussi changé de version à cette période.

En tout cas c’est flagrant. Même à pieds j’ai pu le constater. Ma position (en bleu) me suit instantanément et précisément, je sors de la zone verte (radius), alors que cela devrait passer au rouge cela ne bouge pas. Cela finit par changer, mais dans un délai très variable.

A ta disposition pour faire des tests si besoin était.

J’ai aussi depuis les dernière mise à jour une grande latence.

Bonjour @Sekiro

Quelques constats chiffrés pour que tu puisses te rendre compte de la latence.

De retour chez moi à 16:01 , la géolocalisation de l’app n’était pas remontée dans Jeedom.
A 16:07 ma position était bien vue par l’app puisque que le radius était passé au vert et ma position en bleu bien géolocalisée:

Sauf que cette info n’était pas remontée pas sur Jeedom

image

A 16:09 le binaire était toujours à 0 au niveau de Jeedom

image

Ce n’est qu’à 16:11 que l’info est finalement remontée et a passé le binaire Maison à 1

image

Il aura donc fallu 10mn entre le moment où j’ai ouvert mon portail et celui où Jeedom constate que j’étais présent. Sans compter les 200m de radius que j’ai effectué avant d’ouvrir mon portail. et qui auraient déjà dû provoquer le changement d’état.

A noter que pendant tous ces constats, j’étais sur mon Wifi, que je n’ai pas eu de pertes de connexion ou autre qui auraient pu perturber la communication entre le mobile et Jeedom.

Je ne sais pas si cela va être d’une grande aide, mais au moins c’est factuel

Merci

La prochaine fois que tu constate ce problème
Il faudrait les logs du plugin en debug pour voir ce qui se passe exactement
Merci

Bonjour @JAG @Sekiro

Comme demandé j’ai passé le log en debug à 500m de chez moi ce matin à 11:09, mon statut était bien « absent »

Je le pose en fichier txt car compte tenu de sa longueur il n’est pas accepté par le site :
mobile_log_v2.txt (113,0 Ko)

(J’ai manuellement supprimé les coordonnées GPS ainsi que l’adresse postale)

A 11:17 je n’étais toujours pas détecté dans le radius par l’application, alors que le point bleu était en plein milieu. (4G OK, Wifi OK Géoloc OK)

Ce n’est qu’à 11:22 que le changement d’état s’est fait et m’a détecté comme « présent »

Tout comme hier on reste avec une latence de 10mn avant changement, pas terrible :frowning:

Voilà, si ça peut aider.

Hello,

juste pour debug :

on voit bien que le tel log bien l’info a 2024-09-03T09:17:38.041Z (+2h) donc correspond bien a tes 11h17.
Ensuite l’info n’est envoyer a l’api qu’a 2024-09-03T09:22:38.157 (+2h) soit 11h22.
Si on fait la diff entre les 2 on obtient bien les 300113ms qui sont indiquées dans le log (age).

Pour résumer, l’app a bien reçu l’info de rentrée de zone a 11h17 mais pour x raison, l’info n’a été envoyé a l’api que 5mn plus tard.

Plusieurs choses possibles, ton tel passe la partie geoloc en éco, pour réduire l’impact sur la batterie.

@Sekiro, au niveau de la lib, il n’y a pas des paramètres (actuellement en dur), que tu peux mettre a dispo dans le menu et qui permettrait de jouer sur l’élasticité, fréquence de mise à jour ?

Il y a quand même un décalage entre le moment où je suis rentré dans le radius (~11h12, 11h13 grand max) et les 11h17 où l’information est vue par l’App.
Ça + les 5 minutes de « perdues » entre 11h17 et 11h22, ça fait bien les 10 minutes constatées au global.

Je suis quasi certain qu’avant les mises à jour d’août, il n’y avait pas cette latence.
Avec un radius de 150m, j’arrivais chez moi le portail était ouvert ou s’ouvrait, donc ma présence détectée.

Je peux changer quelques paramètres, mais l’incidence est l’utilisation de la batterie du téléphone…

Je ne comprends pas en quoi la batterie serait la source du problème.
Constat encore fait ce matin :
Sur l’application, dans géolocalisation le point bleu avance bien avec mon déplacement et la zone de radius reste rouge alors que je suis en plein milieu. A ce moment précis la batterie n’est pas responsable du non changement de statut. C’est bien l’application, pourtant ouverte et positionnée sur la géolocalisation qui ne modifie pas l’état instantanément.
Après 10 bonnes minutes, sans raison apparente, le radius passe au vert et sans avoir bougé ou touché quelque chose, toujours avec l’application ouverte et non en veille pour m’assurer du moment où ça bascule.
Le franchissement du radius est pris en compte de façon totalement aléatoire, mais jamais à l’instant T. Il y a toujours une latence plus ou moins grande, 5 à 10mn étant mon constat.

La batterie n’est pas la source du problème, simplement on peut modifier des paramètres sur le service, pour faire plus de requetes GPS, plus précises, mais avec pour incidence une plus grosse consommation de la batterie

Je comprends que + de requêtes = plus de consommation, mais dans le cas présent les requêtes sont bien suffisantes puisque qu’au niveau de l’application la géolocalisation fonctionne très bien et de façon très précise. Ce n’est pas comme si il fallait attendre 5mn avant que la position soit affichée correctement.
C’est le passage dans ou hors radius qui n’est pas détecté. C’est cette fréquence de test in/out = vrai qu’il faut augmenter.

Je fais un build en privé pour tester une modification que je viens de tenter

J’attend les retours avant de pousser sur votre branche

1 « J'aime »

Dans tous les cas je testerai volontiers dès disponibilité, car en l’état je ne peux pas m’en servir, cela ne peut que difficilement être pire :wink:
Merci pour le boulot en attendant le résultat

J’ai poussé en public, pour de tests a plus grosse ampleur
Tu devrais avoir bientôt une notification TestFlight

C’est l’application ? Rien à voir avec le plugin ?

Yes, que l’app

1 « J'aime »

Pardonne mon ignorance, mais tu me parles de notification Testflight et je n’ai pas cette application d’installée chez moi, uniquement Jeedom App
Faut-il l’installer en // ?