dvnt

Politique de confidentialité

Date d'effet :

Cette politique explique quelles données les apps dvnt (l'app compte et les apps sur *.dvnt.app, comme perfect me, Notes, contrée, Billiard, Rubik's et Vault) traitent, où elles sont conservées et ce que vous pouvez faire. Le service est exploité par dvnt. Contact : davidanaton@gmail.com.

En bref

1. Votre compte et la connexion

Vous vous connectez avec Google. dvnt fonctionne sur invitation : un compte ne fonctionne que si son e-mail figure sur notre liste d'accès, et l'accès peut être limité à certaines apps ou à une période.

À la connexion, nous conservons :

Demandes d'accès. Si vous vous connectez avec un e-mail absent de la liste d'accès, nous conservons votre e-mail, votre nom, votre photo, l'heure de la tentative et, si vous avez utilisé un lien d'invitation, qui vous a invité et pour quelle app. L'administrateur est notifié pour pouvoir approuver ou supprimer la demande.

2. Autorisations Google

L'écran de connexion demande à Google exactement ces autorisations (scopes) :

Quand Google renvoie un jeton d'actualisation (refresh token) à la connexion, nous le conservons chiffré (AES-256-GCM) avec la liste des autorisations accordées. Il sert uniquement à la synchronisation Drive : obtenir des jetons d'accès Google de courte durée quand une app se synchronise avec votre Drive. Si vous retirez l'accès de dvnt dans votre compte Google, le jeton cesse de fonctionner et nous le supprimons à sa prochaine utilisation.

Nous utilisons les données Google uniquement pour fournir les fonctions décrites dans cette politique. Nous ne les vendons pas, ne les utilisons pas pour de la publicité et ne les partageons avec personne d'autre.

3. Données sur votre appareil

Par défaut, ce que vous saisissez dans les apps (habitudes, objectifs, journal, parties et scores, noms de joueurs, éléments du coffre, réglages, etc.) est stocké uniquement dans votre navigateur, dans IndexedDB ou localStorage. Rien ne quitte votre appareil sauf si vous utilisez l'une des fonctions ci-dessous ou exportez vous-même un fichier. Notes, et le journal de perfect-me quand vous avez Notes, sont l'exception : ils utilisent le stockage Cloud sauf si vous choisissez autrement (voir Notes). Le jeu à proximité de contrée garde aussi, sur l'appareil seulement et jamais synchronisés : la table que vous hébergez (toutes les mains comprises), la table que vous avez rejointe, et vos copies des parties à proximité hébergées par d'autres (voir Jouer à proximité).

4. Synchronisation Google Drive (facultative)

Si vous choisissez le stockage Drive dans les réglages d'une app, celle-ci garde une copie de ses données dans le dossier de données d'application de votre propre Google Drive. Cette copie est stockée par Google, pas sur les serveurs dvnt. Vous pouvez la supprimer depuis les réglages de Google Drive (gestion des applications) et retirer l'accès de dvnt à tout moment dans votre compte Google.

5. contrée : sauvegarde Cloud, liens partagés et mode TV (facultatifs)

Sauvegarde Cloud. Si vous choisissez le stockage Cloud dans contrée, vos parties (y compris le @nom d'utilisateur et la photo des joueurs de chaque partie qui ont un compte dvnt), les noms de joueurs saisis, vos réglages contrée, la partie en cours, les leçons marquées comme terminées et les systèmes d'enchères que vous avez créés sont stockés sur les serveurs dvnt, liés à votre compte, pour être synchronisés entre vos appareils. Vous pouvez supprimer toute la sauvegarde dans les Réglages de contrée : les parties de l'appareil depuis lequel vous la supprimez y restent, et vos autres appareils effacent leur copie à leur prochaine synchronisation, pour que les données supprimées ne reviennent pas.

Liens de partie partagés. Quand vous partagez une partie, toute personne disposant du lien peut la voir sans se connecter : noms d'équipes, noms des joueurs, annonces et scores. La page demande aux moteurs de recherche de ne pas l'indexer (noindex). Un lien fonctionne jusqu'à ce que vous le révoquiez, supprimiez la partie ou supprimiez votre sauvegarde Cloud. Les apps dans lesquelles vous collez le lien (messageries, par exemple) peuvent en récupérer l'aperçu. Un lien montre la partie telle qu'elle est quand on l'ouvre ; il ne se met pas à jour en direct. Si vous lancez une revanche d'une partie partagée, la revanche est partagée aussi et l'ancien lien affiche un lien vers elle : les personnes qui ont l'ancien lien peuvent voir la nouvelle partie. Arrêtez le partage de la revanche pour y mettre fin.

Mode TV. Un écran peut ouvrir la page TV de contrée sans compte ; elle affiche un QR code. Quand vous le scannez avec votre téléphone, connecté, nous conservons une session TV liée à votre compte : un code aléatoire, un secret haché que seul cet écran connaît, et ses dates d'association et d'expiration. L'écran affiche alors votre partie en cours, les suivantes comprises (noms des équipes et des joueurs, annonces et scores ; pour les joueurs à la table qui ont un compte dvnt, y compris vos amis, leur @nom d'utilisateur et leur photo), et les annonces de la donne en cours, que votre téléphone envoie à nos serveurs tant qu'une TV vous suit. Toute personne qui voit l'écran les voit. Cela s'arrête quand vous l'arrêtez depuis votre téléphone, après 12 heures, ou quand vous supprimez votre sauvegarde Cloud ; un code que personne ne scanne expire après 15 minutes. Le mode TV demande le stockage Cloud.

Parties en ligne. Quand vous créez ou rejoignez une table en ligne dans contrée, nos serveurs conservent la table tant qu'elle est ouverte : qui y est (identifiant de compte, prénom, @pseudo et photo), les règles, les noms et couleurs d'équipe choisis par les joueurs, le partenaire choisi par chaque joueur, le jeton du donneur, qui a appuyé sur Prêt, si la partie compte pour le classement, et une fois la partie commencée toutes les cartes distribuées et jouées, toutes les annonces et les scores. Seul le serveur voit toutes les mains ; chaque joueur ne reçoit que ses propres cartes et ce que la table montre. Les autres joueurs de la table voient votre prénom, votre photo et votre @pseudo dans le salon, à la table et sur votre fiche de joueur, d'où ils peuvent vous envoyer une demande d'ami. Quand deux joueurs d'une table ont le même prénom, les autres voient aussi l'initiale de leur nom, tirée du nom de leur compte (« David A. »), ou leur @pseudo si cela ne suffit pas ; ce nom reste dans la partie enregistrée. Une table a un code de 5 caractères et un lien (/t/<code>) : toute personne connectée qui a le code ou le lien peut voir le créateur du salon et le rejoindre tant que la partie n'a pas commencé ; ensuite, seuls ses joueurs peuvent l'ouvrir. Quand une partie se termine, le serveur l'enregistre pour tous les joueurs : le créateur la reçoit dans sa sauvegarde Cloud, les autres dans leurs parties partagées, déjà acceptée et définitive (sans demande d'acceptation : appuyer sur Prêt dans le salon accepte les règles et, pour une table classée, que la partie compte). Une partie entre deux équipes d'utilisateurs dvnt, sans bot, à une table que son créateur a laissée classée, est vérifiée aussitôt et compte pour le classement officiel. Une fois une partie finie, un joueur peut quitter la table ; elle n'apparaît alors plus pour lui. Une partie arrêtée par les joueurs, ou après 24 heures sans activité, est gardée comme abandonnée et ne compte jamais. Le jeu en ligne demande le stockage Cloud.

Jouer à proximité. contrée se joue aussi avec les personnes autour de vous sans internet, les téléphones sur le même Wi-Fi ou sur le partage de connexion d'un téléphone. Pour se connecter, le téléphone de l'hôte affiche un QR code et celui de l'invité en affiche un en retour ; la caméra de chaque téléphone lit celui de l'autre. Les images de la caméra sont traitées sur le téléphone pour lire le code et ne sont jamais enregistrées ni envoyées ; la caméra ne fonctionne que tant que cet écran est ouvert. Un QR code contient ce dont deux téléphones ont besoin pour se connecter : leurs adresses sur le réseau local, des clés de connexion, un numéro de table et la version de l'app. À la place d'un QR code, l'hôte peut envoyer un lien d'invitation, et l'invité une réponse, par l'app de messagerie de leur choix : le lien et la réponse contiennent les mêmes données de connexion (dans la partie # du lien, que les navigateurs n'envoient pas à nos serveurs), et cette app les traite selon ses propres conditions. Les téléphones communiquent ensuite directement, par une connexion WebRTC chiffrée (DTLS), sans serveur dvnt ni relais tiers (aucun serveur STUN ou TURN). Le téléphone de chaque invité envoie à l'hôte son identifiant de compte, son prénom, son @pseudo et sa photo (du compte enregistré sur le téléphone ; rien ne peut le vérifier hors ligne) et ses coups. Le téléphone de l'hôte fait tourner la table : il connaît toutes les mains, et enregistre la table (toutes les mains comprises) sur le téléphone après chaque coup, pour reprendre la partie si l'app redémarre ; il la supprime quand l'hôte ferme la table, ou quand la partie est terminée. Les autres joueurs voient votre prénom, votre photo et votre @pseudo, comme dans une partie en ligne. Quand la partie se termine, elle est enregistrée sur le téléphone de l'hôte comme sa partie, avec le compte de chaque joueur à sa place ; dès que l'hôte est en ligne avec le stockage Cloud, elle est partagée pour acceptation avec les joueurs qui sont amis de l'hôte, comme toute partie qu'il compte, et elle n'est pas vérifiée aussitôt. Chaque invité garde un résumé de la partie sur son téléphone seulement (les 20 derniers), retiré quand la copie de l'hôte lui parvient.

6. Notes et le journal de perfect-me (facultatif)

Notes est une app de notes en Markdown. Si vous y avez accès, le journal de perfect-me fait partie de vos notes : l'entrée de journal d'un jour (humeur, énergie, tags, personnes, objectif et vos réponses aux questions) est la note de ce jour. Écrire @nom dans une note crée une note pour cette personne dans vos notes ; ses propriétés peuvent contenir les informations que vous saisissez à son sujet, comme son prénom et son nom, d'autres noms et sa date de naissance.

Où elles sont gardées. Vous le choisissez une fois, dans les réglages de Notes ou de perfect-me, et les deux apps le suivent ; nous enregistrons ce choix avec votre compte. Avec Cloud (par défaut), vos notes (leurs noms et dossiers, leur texte et leurs propriétés) sont stockées sur les serveurs dvnt, liées à votre compte, avec les versions précédentes de chaque note pour pouvoir en restaurer une. Avec Google Drive, elles sont gardées dans un fichier du dossier de données d'application de votre propre Drive (voir Synchronisation Google Drive). Avec Cet appareil seulement, elles restent dans le navigateur ; l'app Notes et perfect-me gardent alors chacune les leurs et ne voient pas celles de l'autre. Vos notes ne sont que pour vous : personne d'autre ne peut les lire, et elles ne sont pas chiffrées de bout en bout (le serveur peut les lire, comme il le doit pour les synchroniser et garder leur historique).

7. openGym (gym.dvnt.app)

Le carnet de musculation sur gym.dvnt.app est openGym, une app open source que nous faisons tourner sans modification sur nos serveurs. Il n'utilise pas votre compte dvnt : il a ses propres profils, et vous vous y connectez avec une clé d'accès (Face ID, Touch ID, empreinte digitale ou clé de sécurité). Créer un profil demande un code d'invitation de l'administrateur.

Avec un profil, nous conservons sur les serveurs dvnt : le nom de profil que vous choisissez, une adresse e-mail si vous en ajoutez une pour vous connecter, les clés publiques de vos clés d'accès (jamais votre empreinte ni votre visage), et ce que vous saisissez, pour le synchroniser entre vos appareils : programmes, séances et séries, poids et objectifs, réglages, et les photos ou vidéos que vous ajoutez à vos propres exercices. Les données d'entraînement et de poids peuvent en dire sur votre santé ; seuls vous et l'administrateur pouvez les voir. L'administrateur peut voir la liste des profils et l'historique des séances de chaque profil dans le tableau de bord d'administration d'openGym. Si vous activez les notifications, l'abonnement push de votre navigateur est conservé comme décrit dans Notifications push ; si vous associez un nouvel appareil avec un code ou un QR code, nous conservons ce lien entre vos appareils.

Journal d'activité. openGym enregistre les connexions, les tentatives de connexion échouées et les actions de l'administrateur, avec le profil et l'heure, mais sans adresse IP.

8. Pseudos et amis

Votre pseudo. À votre première connexion, vous recevez un pseudo formé de la partie de votre adresse e-mail Google avant le @ (avec un numéro ajouté s'il est déjà pris). Vous pouvez le changer dans l'app compte (onglet Pseudo) une fois tous les 30 jours. L'administrateur peut aussi le changer, par exemple pour empêcher une usurpation, et chaque changement est enregistré.

Qui peut le voir. Les autres utilisateurs de dvnt ne peuvent vous trouver qu'en tapant votre pseudo exact dans une app que vous utilisez tous les deux ; il est impossible de parcourir ou de rechercher la liste des utilisateurs, et les recherches sont limitées en nombre. Une recherche affiche votre pseudo, votre prénom et votre photo, jamais votre adresse e-mail. Les apps ne demandent ces informations de profil au service de compte que lorsqu'un utilisateur connecté en a besoin, par exemple pour afficher sa liste d'amis.

Amis (par app ; aujourd'hui dans contrée, qui demande le stockage Cloud). Les amitiés sont séparées dans chaque app. Quand vous ajoutez un ami, par son pseudo ou avec son lien d'ami ou son QR code, nous conservons les deux identifiants de compte, qui a fait la demande, et quand elle a été envoyée et acceptée. Des amis voient mutuellement leur pseudo, leur nom complet et leur photo. Une demande d'ami n'affiche que le prénom tant qu'elle n'est pas acceptée. Dans contrée, un ami choisi pour une partie y figure sous son prénom, ou son prénom et l'initiale de son nom (« David A. ») quand un autre joueur a le même prénom ; ce nom fait partie de la partie, comme tout nom de joueur. Quand vous lancez une partie en étant connecté, votre propre place (Sud) est pré-remplie avec le prénom de votre compte, ou votre @pseudo, modifiable avant de commencer ; les amis qui voient la partie voient ce nom.

9. Notifications push (facultatives)

Si vous activez les notifications push, nous conservons l'abonnement push de votre navigateur (une URL et ses clés) pour vous envoyer des notifications, par exemple des alertes de nouvelles demandes d'accès, ou dans contrée une demande d'ami ou son acceptation, une invitation à une table, une partie à valider, ou la fin d'une partie que vous avez validée. Pour les notifications d'une app, nous gardons aussi de quelle app il s'agit et votre langue, pour que le texte soit dans cette langue. Elles sont acheminées par le service push de l'éditeur de votre navigateur (Google, Mozilla ou Apple, par exemple). Désactiver les notifications supprime l'abonnement.

10. Cookies et stockage local

Nous utilisons trois cookies, tous nécessaires à la connexion, et tous httpOnly (illisibles par les scripts), Secure (envoyés uniquement en HTTPS) et SameSite=Lax :

Les apps utilisent aussi localStorage et IndexedDB sur votre appareil pour vos données et préférences. Nous n'utilisons aucun cookie publicitaire ou de suivi.

11. Tiers

Nous n'utilisons ni mesure d'audience, ni publicité, ni traceurs, et nous ne vendons ni ne louons vos données. Les services concernés sont :

Nos serveurs traitent des données techniques comme votre adresse IP (par exemple pour limiter les requêtes abusives) et des journaux de requêtes, uniquement pour faire fonctionner et protéger le service.

12. Durées de conservation

13. Vos choix

La suppression de compte en libre-service n'existe pas encore. Pour consulter, corriger ou supprimer votre compte et les données que nous détenons sur vous, écrivez à davidanaton@gmail.com ; nous répondrons dans un délai raisonnable.

14. Sécurité

Tout le trafic passe en HTTPS ; les téléphones qui jouent à proximité communiquent en WebRTC chiffré (DTLS). Les cookies de connexion sont httpOnly et Secure, les secrets de session ne sont stockés que sous forme d'empreinte, et les jetons d'actualisation Google sont chiffrés. Aucun système n'est parfaitement sûr, mais nous nous efforçons de protéger vos données.

15. Enfants

dvnt ne s'adresse pas aux enfants. Si vous pensez qu'un enfant nous a transmis des données personnelles, contactez-nous et nous les supprimerons.

16. Modifications

Nous pouvons mettre à jour cette politique. Dans ce cas, nous changeons la date d'effet en haut de cette page.

17. Contact

dvnt : davidanaton@gmail.com