Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

[HS] Géolocalisation et déontologie :

5 réponses
Avatar
Ph. Gras
Bonjour =E0 toutes et =E0 tous !

actuellement, je travaille sur une application Web destin=E9e =E0 tracer =
des bagages.

Un voyageur se connecterait sur le site o=F9 se trouve l'appli au moment =
de fermer
sa, ou ses valises, g=E9n=E8re un QR Code, l'imprime et le colle dessus.

=C0 chaque rupture de charge, un intervenant peut scanner le code et =
participer au
suivi des bagages : =E0 l'a=E9roport, en prenant un taxi et =E0 l'h=F4tel =
=E0 son arriv=E9e.

J'ai commenc=E9 =E0 d=E9velopper =E7a en javascript, et derri=E8re il y =
aura une base SQL
pour r=E9cup=E9rer les donn=E9es, celle-ci sera manipul=E9e avec PHP.

L'impl=E9mentation de la g=E9olocalisation m'a pos=E9 quelques =
probl=E8mes. Avec JS,
le navigateur rousp=E8te =E0 chaque fois qu'on l'interroge =E0 ce sujet. =
Je comprends
pourquoi et je l'admets parfaitement. Le probl=E8me est que ces =
pr=E9cautions sont
d=E9clench=E9es au chargement de la page, quand le navigateur analyse le =
script.

Cela ne me laisse pas le temps d'expliquer le pourquoi du comment, et je =
crois
que la plupart des touristes en partance n'en n'ont rien =E0 foutre de =
toute fa=E7on.

Je pense donc me tourner vers le module de g=E9olocalisation de NginX, =
qui est
charg=E9 avec le paquet Debian nginx-full :
http://nginx.org/en/docs/http/ngx_http_geoip_module.html

Je suppose que je pourrai ensuite r=E9cup=E9rer les donn=E9es avec :
http://php.net/manual/fr/book.geoip.php

D'un c=F4t=E9, =E7a me g=EAne un peu de faire =E7a =E0 l'arrache (m=EAme =
si je peux avertir le
client d'un service qu'il devrait appr=E9cier), et de l'autre =E7a me =
gave de l'emb=EAter
les avertissements du navigateur, que je ne peux pas g=E9rer.

=C9tant bien entendu que si le gars est derri=E8re un proxy, et que les =
coordonn=E9es
r=E9cup=E9r=E9es supposent la plus grande pr=E9vention, ce sont ses =
bagages et donc
son probl=E8me.

Comment aborderiez-vous cette question de votre c=F4te ?

Merci pour vos r=E9ponses et bon dimanche,

Ph. Gras=

5 réponses

Avatar
Gr
Salut,
A l'ouverture de la page demande confirmation à l'utilisateur sa GEO-localisation (depuis nginx).
* S'il accepte, tu exploite les données (PHP) et tu lui demande si la géolocalisation correspondant à son emplacement.
- S'il confirme : jackpot
- S'il ne confirme pas, invite-le à saisir son emplacement.
* S'il refuse, tu n'exploite pas les données et tu lui demande de saisir son emplacement pour continuer.
Cdt
À dim. nov. 27 15:37:49 2016 GMT+0100, Ph. Gras a écrit :
Bonjour à toutes et à tous !
actuellement, je travaille sur une application Web destinée à tracer des bagages.
Un voyageur se connecterait sur le site où se trouve l'appli au moment de fermer
sa, ou ses valises, génère un QR Code, l'imprime et le colle dessus.
À chaque rupture de charge, un intervenant peut scanner le code et participer au
suivi des bagages : à l'aéroport, en prenant un taxi et à l'hôtel à son arrivée.
J'ai commencé à développer ça en javascript, et derrière il y aura une base SQL
pour récupérer les données, celle-ci sera manipulée avec PHP.
L'implémentation de la géolocalisation m'a posé quelques problèmes. Avec JS,
le navigateur rouspète à chaque fois qu'on l'interroge à ce sujet. Je comprends
pourquoi et je l'admets parfaitement. Le problème est que ces précautions sont
déclenchées au chargement de la page, quand le navigateur analyse le script.
Cela ne me laisse pas le temps d'expliquer le pourquoi du comment, et je crois
que la plupart des touristes en partance n'en n'ont rien à foutre de toute façon.
Je pense donc me tourner vers le module de géolocalisation de NginX, qui est
chargé avec le paquet Debian nginx-full :
http://nginx.org/en/docs/http/ngx_http_geoip_module.html
Je suppose que je pourrai ensuite récupérer les données avec :
http://php.net/manual/fr/book.geoip.php
D'un côté, ça me gêne un peu de faire ça à l'arrache (même si je peux avertir le
client d'un service qu'il devrait apprécier), et de l'autre ça me gave de l'embêter
les avertissements du navigateur, que je ne peux pas gérer.
Étant bien entendu que si le gars est derrière un proxy, et que les coordonnées
récupérées supposent la plus grande prévention, ce sont ses bagages et donc
son problème.
Comment aborderiez-vous cette question de votre côte ?
Merci pour vos réponses et bon dimanche,
Ph. Gras

--
Envoyé depuis mon Jolla
Avatar
S
Bonjour,
Le dimanche 27 novembre 2016 à 15:37, Ph. Gras a écrit :
L'implémentation de la géolocalisation m'a posé quelques problèmes. Avec JS,
le navigateur rouspète à chaque fois qu'on l'interroge à ce sujet. Je comprends
pourquoi et je l'admets parfaitement. Le problème est que ces précautions sont
déclenchées au chargement de la page, quand le navigateur analyse le script.

Pourquoi ne pas décaler le chargement ? Tu affiches le message d’explication et
lorsque tu as l’accord de ton utilisateur, tu charges le script. Plusieurs
possibilités pour le chargement :
— tu changes de page et le script est dans une balise de la page cible,
— tu ne changes pas de page et tu charges le script en dynamique avec un
outil comme Require.js.
Sébastien
Avatar
Haricophile
Le Sun, 27 Nov 2016 15:37:49 +0100,
"Ph. Gras" a écrit :
Bonjour à toutes et à tous !
actuellement, je travaille sur une application Web destinée à t racer
des bagages.
Un voyageur se connecterait sur le site où se trouve l'appli au
moment de fermer sa, ou ses valises, génère un QR Code, l'impri me et
le colle dessus.

Il me semble que l'acceptation peut se faire à ce moment non ? En plus
se c'est "anonymisé" avec seulement un code, ça ne doit pas à ªtre
très problématique. Quand on voyage en général et surto ut
depuis quelque temps on est généralement déjà identifi é pisté de
manière très intrusive "pour des raisons de sécurité"
et "en cas d'accident".
Comment aborderiez-vous cette question de votre côte ?
Merci pour vos réponses et bon dimanche,
Ph. Gras

La première des déontologie est de ne collecter que les donnà ©es
strictement nécessaires et de les détruire dès qu'elle ne so nt plus
nécessaires. Je pense que la CNIL doit avoir une opinion et des
documents là dessus.
Normalement il y a aussi une obligation de sécurité des informati ons
collectées, donc sur une apli web/js/php, je suppose qu'il vaut mieux
que ce soit stocké de manière minimale avec un recoupement avec u ne base
non connectée si besoin (recherche de bagage perdu...).
--
Avatar
Yves Rutschle
On Sun, Nov 27, 2016 at 03:37:49PM +0100, Ph. Gras wrote:
Je pense donc me tourner vers le module de géolocalisation de NginX, qui est
chargé avec le paquet Debian nginx-full :
http://nginx.org/en/docs/http/ngx_http_geoip_module.html

Si je ne m'abuse, ça va se baser sur la localisation de
l'adresse IP, ce qui ne marche pas vraiment pour un
téléphone portable (qui se retrouve en NAT chez son
opérateur, du coup presque toujours à Paris).
Y.
Avatar
Ph. Gras
Bonsoir,
et merci pour vos retours.
J'ai essayé 3 options et aucune n'est complètement satisfaisante en solo :
La géolocalisation avec l'objet navigator de javascript dépend beaucoup
du comportement de chaque navigateur. Celui de Safari par exemple est
très perturbant pour le client, il l'a été pour moi. La précision n'est pas très
bonne (une trentaine de kilomètres), mais c'est suffisant pour moi.
J'ai utilisé une base de données qui permet 10.000 requêtes par jour, elle
a généré le même comportement perturbant du navigateur quand je l'ai
interrogée en javascript. Alors j'ai fait une requête Ajax sur l'adresse IP, et
j'ai retourné les informations récupérées par le serveur au navigateur. Ça
a l'air de fonctionner, mais effectivement pas correctement sur les mobiles.
Je vais ajouter un bouton pour améliorer les latitude et longitude avec JS,
ce qui retardera le déclenchement des alertes du navigateur et le client se
démerdera avec ensuite.
Je ferai des tests demain sur d'autres machines fixes et mobiles.
Qu'en pensez-vous ?
Ph. Gras=