From 61be70ea6bf6932fffe3f5f9c3f8def419db9ea0 Mon Sep 17 00:00:00 2001 From: Poloman Date: Mon, 26 Oct 2026 13:28:49 +0100 Subject: [PATCH] Privacy policy for version 1.5: clips, crews, the map, the promoter form's Pro check Co-Authored-By: Claude Opus 5.5 --- README.md | 185 +++++++++++++++++++++++++++++++++++++++++++----------- 1 file changed, 149 insertions(+), 36 deletions(-) diff --git a/README.md b/README.md index 6090b5f..8e75df9 100644 --- a/README.md +++ b/README.md @@ -1,17 +1,17 @@ # Dubsiren 27 — Privacy Policy -*Last updated: 16 October 2026 · [Version française plus bas](#dubsiren-27--politique-de-confidentialité)* +*Last updated: 26 October 2026 · [Version française plus bas](#dubsiren-27--politique-de-confidentialité)* Dubsiren 27 is a live-radio player with a dub mixing console, published by **Coco**. This policy describes what the app does with data. The short version: it has no accounts, asks for no personal information, and sends nothing about you to its developer — unless you choose to send an event to -the agenda or report one. +the agenda, post a clip, go to a date with a crew, or report something. ## What the developer collects **Nothing you do not send yourself.** There is no sign-in, no user account, no analytics and no -crash reporting. Your mixer settings, your trial deadlines, your agenda filters and your recordings -stay on your device. +crash reporting. Your mixer settings, your trial deadlines, your agenda filters, the dates you follow +and your recordings stay on your device. These are the only things that reach the developer: @@ -34,11 +34,54 @@ These are the only things that reach the developer: become public in the agenda; your e-mail address and your IP address are never published. A refused date is deleted at once, flyer included. A published date is deleted, with everything sent with it, about two days after it has taken place, or sooner if it is taken down. Your - e-mail address is used only to reply to you about that date. + e-mail address is used only to reply to you about that date. With the date the app sends either + your Google Play purchase token, which the server checks with Google and keeps only as a hash, or, + during the form's 24-hour trial, a random trial ticket drawn on your phone, which the server keeps + as a hash with the time the trial began (and your IP address for its first day only, to limit how + many trials one network can start). - **A date you report.** The *Report* button sends the date's identifier, the reason you picked and your IP address, so the developer can review it. A report is deleted with the date it concerns. -- **Abuse protection.** To limit spam, the server counts the form and report requests sent from each - IP address over the last 24 hours; those counts are deleted after 24 hours. +- **A clip you post (Pro).** A clip is a video of 20 seconds at most, pinned to an agenda date. The + app re-encodes it on your phone first, which drops the original file's metadata (including any + location the camera wrote into it); the server strips it again. It sends the video, the date it is + for, your Google Play purchase token (which the server checks with Google, then keeps only as a + hash, to enforce the three-a-day limit and any ban) and your IP address. The clip is **public at + once**, to everyone, for **24 hours**: it is served from `clips.papazuzu.com`, a server rented by + the developer, and its thumbnail from `papazuzu.com`. The developer is told of each new clip + through the private Telegram bot, with its thumbnail. After 24 hours, or sooner if it is taken + down, the video, its thumbnail, its reports and your IP address are deleted. +- **A clip you watch.** Playing a clip downloads it from `clips.papazuzu.com`, which sees your IP + address and nothing else, like any web server. +- **A clip you report.** Sends the clip's identifier, the reason and your IP address. When several + people report the same clip it is hidden until the developer looks at it. Reports are deleted + with the clip. +- **Crews (optional).** "Going with my crew" lets you go to a date with friends you invite, without + an account: + - *Your crew identity.* The first time you create or join a crew, the app draws a random secret + and keeps it on your phone. The server stores only a one-way hash of it, a random public + identifier, the **nickname you choose** (30 characters at most; it does not need to be your + name), and when the identity was created and last used. + - *A crew.* Its date, its members (by that hash), and the one-line **rendez-vous** its creator may + write (140 characters at most). An **invitation link** is valid 7 days and stored only as a + hash; anyone holding it can join, up to 15 members. + - *Who sees what.* The members of a crew see each other's nicknames and the rendez-vous. **Nobody + else sees anything**: there is no directory, no search and no chat. Opening an invitation link + in a browser shows a page that says nothing about the crew. + - *Background checks.* To tell you that someone joined your crew or that the rendez-vous changed, + the app asks the server for your crews every hour while you have one to come, and every three + hours otherwise. Nothing is sent while you have no crew identity. + - *Reports.* Any member can report a nickname or the rendez-vous: the crew's identifier, the + reported member's public identifier, the reason and the hash of the reporter are kept, and the + developer is told through the Telegram bot (identifiers and reason only). Enough reports hide + the nickname or the rendez-vous until the developer looks at it. + - *How long.* A crew, its members, its rendez-vous and its reports are deleted **48 hours after + its date begins**, or as soon as its creator leaves it. *Erase my crew identity*, in any crew + sheet, deletes your identity at once, with the crews you created and your place in the others. + An identity unused for **12 months** and in no crew is deleted automatically. An identity the + developer has banned for abuse is kept, as a hash and a nickname, for as long as the ban lasts. +- **Abuse protection.** To limit spam, the server counts the requests sent from each IP address + (forms, reports, clips, crews) and the crew actions of each identity over the last 24 hours; those + counts are deleted after 24 hours. To have something you sent removed sooner, write to michelcotenoewa@gmail.com. @@ -49,11 +92,13 @@ The app talks to services that are not the developer's. Each has its own policy. | Service | Why | What it may receive | |---|---|---| | **Google AdMob** | Advertising in the free version | Device and advertising identifiers, approximate location, ad interactions — see consent below | -| **Google Play Billing** | The one-time Pro unlock | Google processes the payment; the app only ever learns whether the unlock is owned | +| **Google Play Billing** | The one-time Pro unlock | Google processes the payment; the app only ever learns whether the unlock is owned. When you post a clip or send a date, the developer's server asks Google whether your purchase token is valid | +| **OpenFreeMap** (`tiles.openfreemap.org`) | Draws the agenda's map, only when you open it | Your IP address and the map tiles requested, which show the area you are looking at | | **Radio stations** | Playing a stream | Your IP address and a request, as with any internet radio | | **Ticket and event pages** | The agenda's *Tickets* / *Info* buttons | Only when you tap one: the page opens in your own browser, under that site's own policy | -| **Cloudflare** | Delivers `papazuzu.com` (agenda, flyers, form) | Your IP address and the request, as for any website behind Cloudflare | -| **Telegram** | Tells the developer a date or a report awaits review | What you sent with the form or the report, except your IP address | +| **Cloudflare** | Delivers `papazuzu.com` (agenda, flyers, form, clips' thumbnails, crews, invitation links) | Your IP address and the request, as for any website behind Cloudflare | +| **Telegram** | Tells the developer a date, a clip or a report awaits review | What you sent with the form or the report, a new clip's thumbnail and date, a crew report's identifiers and reason — never your IP address | +| **The apps you share an invitation with** | *Invite* opens Android's share menu | Only the link and the date's name, sent by you, to whom you choose | ### Advertising and your consent @@ -82,6 +127,10 @@ them.) - Your console position — EQ, delay, faders, the module you last used. - Trial deadlines for the paid modules, and whether the Pro unlock is owned. - Which agenda dates you have already been told about, so a date is announced only once. +- The dates you follow with *Follow*, and what the last background check saw of your crews and of + the clips, so each novelty is announced only once. +- Your crew identity's secret, encrypted with a key held by Android's Keystore. It is left out of + every backup: a new phone, or a reinstall, starts a new identity. - Your agenda filters (region, countries, type). To choose the first filter, the app reads the country of your mobile network or SIM, or else your language setting — a country code, never a location, and no location permission is asked for. It is used on the phone and never sent. @@ -92,10 +141,12 @@ them.) ## Permissions - **Internet** — to play radio streams, fetch the agenda and serve ads. -- **Notifications** — for the playback notification and its transport controls, and to tell you - when dates are added to the agenda in your country (with the flyer as a thumbnail). Declining it - only costs you those notifications; playback and the agenda still work. The "new agenda dates" - notifications can also be turned off on their own in Android's settings for the app. +- **Notifications** — for the playback notification and its transport controls; to tell you when + dates are added to the agenda in your country (with the flyer as a thumbnail); when someone joins + your crew or its rendez-vous changes; and when a clip is posted on a date you follow. Declining + it only costs you those notifications; playback, the agenda and the crews still work. Each kind + ("new agenda dates", "Crews", "Clips on followed dates") can also be turned off on its own in + Android's settings for the app. - **Music and audio** — so the Pro Decks can play the music already on your phone. Your tracks are read where they are, never copied or uploaded. Declining only leaves the decks without your library; the radio and the rest of the app work as before. @@ -112,9 +163,11 @@ anything from them. ## Your rights -Apart from an event or a report you chose to send, the developer holds no data about you. To see, -correct or delete what you sent — the event, its flyer, your e-mail address — write to the address -below; it is done by hand, usually within a few days. For data held by Google as a result of +Apart from what you chose to send — an event, a clip, a report, a crew — the developer holds no data +about you. Your crew identity, and everything attached to it, can be deleted at once from the app +(*Erase my crew identity*). To see, correct or delete anything else you sent — the event, its +flyer, your e-mail address, a clip — write to the address below; it is done by hand, usually within +a few days. For data held by Google as a result of advertising or a purchase, use Google's own tools, or withdraw your advertising consent in the app as described above. @@ -131,18 +184,19 @@ Questions about this policy: michelcotenoewa@gmail.com # Dubsiren 27 — Politique de confidentialité -*Dernière mise à jour : 16 octobre 2026* +*Dernière mise à jour : 26 octobre 2026* Dubsiren 27 est un lecteur de radios en direct doté d'une console de mixage dub, publié par **Coco**. Cette politique décrit ce que l'application fait des données. En résumé : aucun compte, aucune information personnelle demandée, et rien vous concernant n'est transmis à son auteur — sauf -si vous choisissez d'envoyer un événement à l'agenda ou d'en signaler un. +si vous choisissez d'envoyer un événement à l'agenda, de publier un clip, d'aller à une date avec une +crew, ou de signaler quelque chose. ## Ce que l'auteur collecte **Rien que vous n'envoyiez vous-même.** Il n'y a ni connexion, ni compte utilisateur, ni analytique, -ni remontée de plantages. Vos réglages de console, vos périodes d'essai, vos filtres d'agenda et vos -enregistrements restent sur votre téléphone. +ni remontée de plantages. Vos réglages de console, vos périodes d'essai, vos filtres d'agenda, les +dates que vous suivez et vos enregistrements restent sur votre téléphone. Voici tout ce qui parvient à l'auteur : @@ -166,13 +220,62 @@ Voici tout ce qui parvient à l'auteur : e-mail et votre adresse IP ne sont jamais publiées. Une date refusée est supprimée aussitôt, affiche comprise. Une date publiée est supprimée, avec tout ce qui l'accompagnait, environ deux jours après avoir eu lieu, ou plus tôt si elle est retirée. Votre adresse e-mail ne sert qu'à vous - répondre au sujet de cette date. + répondre au sujet de cette date. Avec la date, l'application envoie soit votre jeton d'achat Google + Play, que le serveur vérifie auprès de Google et ne garde que sous forme d'empreinte, soit, pendant + l'essai de 24 heures du formulaire, un ticket d'essai tiré au hasard sur votre téléphone, que le + serveur garde sous forme d'empreinte avec l'heure du début de l'essai (et votre adresse IP le + premier jour seulement, pour limiter le nombre d'essais lancés depuis un même réseau). - **Une date que vous signalez.** Le bouton *Signaler* envoie l'identifiant de la date, le motif choisi et votre adresse IP, pour que l'auteur l'examine. Un signalement est supprimé avec la date qu'il concerne. -- **Protection contre les abus.** Pour limiter le spam, le serveur compte les envois de formulaire - et de signalement faits depuis chaque adresse IP sur les dernières 24 heures ; ces comptes sont - supprimés au bout de 24 heures. +- **Un clip que vous publiez (Pro).** Un clip est une vidéo de 20 secondes au plus, épinglée sur + une date de l'agenda. L'application la réencode d'abord sur votre téléphone, ce qui retire les + métadonnées du fichier d'origine (y compris une position que l'appareil photo y aurait écrite) ; + le serveur les retire encore. Elle envoie la vidéo, la date concernée, votre jeton d'achat Google + Play (que le serveur vérifie auprès de Google, puis ne garde que sous forme d'empreinte, pour + appliquer la limite de trois par jour et un éventuel bannissement) et votre adresse IP. Le clip + est **public aussitôt**, pour tout le monde, pendant **24 heures** : il est servi depuis + `clips.papazuzu.com`, un serveur loué par l'auteur, et sa miniature depuis `papazuzu.com`. + L'auteur est prévenu de chaque nouveau clip par le bot Telegram privé, avec sa miniature. Au bout + de 24 heures, ou plus tôt s'il est retiré, la vidéo, sa miniature, ses signalements et votre + adresse IP sont supprimés. +- **Un clip que vous regardez.** Lire un clip le télécharge depuis `clips.papazuzu.com`, qui voit + votre adresse IP et rien d'autre, comme tout serveur web. +- **Un clip que vous signalez.** Envoie l'identifiant du clip, le motif et votre adresse IP. Quand + plusieurs personnes signalent le même clip, il est masqué jusqu'à ce que l'auteur l'examine. Les + signalements sont supprimés avec le clip. +- **Les crews (facultatif).** « J'y vais avec ma crew » permet d'aller à une date avec des amis que + vous invitez, sans compte : + - *Votre identité crew.* La première fois que vous créez ou rejoignez une crew, l'application tire + un secret au hasard et le garde sur votre téléphone. Le serveur n'en conserve qu'une empreinte + à sens unique, un identifiant public aléatoire, le **pseudo que vous choisissez** (30 caractères + au plus ; ce n'est pas forcément votre nom), et les dates de création et de dernière + utilisation. + - *Une crew.* Sa date, ses membres (par cette empreinte), et le **rendez-vous** d'une ligne que + son créateur peut écrire (140 caractères au plus). Un **lien d'invitation** est valable 7 jours + et n'est conservé que sous forme d'empreinte ; quiconque le détient peut rejoindre, jusqu'à 15 + membres. + - *Qui voit quoi.* Les membres d'une crew voient les pseudos des autres et le rendez-vous. + **Personne d'autre ne voit rien** : ni annuaire, ni recherche, ni chat. Ouvrir un lien + d'invitation dans un navigateur affiche une page qui ne dit rien de la crew. + - *Vérifications en arrière-plan.* Pour vous dire que quelqu'un a rejoint votre crew ou que le + rendez-vous a changé, l'application demande vos crews au serveur toutes les heures quand vous en + avez une à venir, toutes les trois heures sinon. Rien n'est envoyé tant que vous n'avez pas + d'identité crew. + - *Signalements.* Tout membre peut signaler un pseudo ou le rendez-vous : l'identifiant de la + crew, l'identifiant public du membre signalé, le motif et l'empreinte de l'auteur du + signalement sont conservés, et l'auteur de l'application en est prévenu par le bot Telegram + (identifiants et motif seulement). Assez de signalements masquent le pseudo ou le rendez-vous + jusqu'à ce qu'il l'examine. + - *Durée de conservation.* Une crew, ses membres, son rendez-vous et ses signalements sont + supprimés **48 heures après le début de sa date**, ou dès que son créateur la quitte. *Effacer + mon identité crew*, dans n'importe quelle fiche crew, supprime aussitôt votre identité, avec les + crews que vous avez créées et votre place dans les autres. Une identité inutilisée depuis **12 + mois** et dans aucune crew est supprimée automatiquement. Une identité bannie pour abus est + conservée, sous forme d'empreinte et de pseudo, tant que dure le bannissement. +- **Protection contre les abus.** Pour limiter le spam, le serveur compte les requêtes faites depuis + chaque adresse IP (formulaires, signalements, clips, crews) et les actions de crew de chaque + identité sur les dernières 24 heures ; ces comptes sont supprimés au bout de 24 heures. Pour faire supprimer plus tôt ce que vous avez envoyé, écrivez à michelcotenoewa@gmail.com. @@ -184,11 +287,13 @@ politique. | Service | Pourquoi | Ce qu'il peut recevoir | |---|---|---| | **Google AdMob** | La publicité de la version gratuite | Identifiants d'appareil et publicitaire, localisation approximative, interactions — voir le consentement ci-dessous | -| **Google Play Billing** | L'achat unique de la version Pro | Google traite le paiement ; l'application sait seulement si le déblocage est acquis | +| **Google Play Billing** | L'achat unique de la version Pro | Google traite le paiement ; l'application sait seulement si le déblocage est acquis. Quand vous publiez un clip ou envoyez une date, le serveur de l'auteur demande à Google si votre jeton d'achat est valide | +| **OpenFreeMap** (`tiles.openfreemap.org`) | Dessine la carte de l'agenda, seulement quand vous l'ouvrez | Votre adresse IP et les tuiles de carte demandées, qui montrent la zone que vous regardez | | **Les stations de radio** | La lecture d'un flux | Votre adresse IP et une requête, comme pour toute webradio | | **Les pages de billetterie et d'événement** | Les boutons *Billets* / *Infos* de l'agenda | Seulement si vous en touchez un : la page s'ouvre dans votre propre navigateur, sous la politique de ce site | -| **Cloudflare** | Sert `papazuzu.com` (agenda, affiches, formulaire) | Votre adresse IP et la requête, comme pour tout site derrière Cloudflare | -| **Telegram** | Prévient l'auteur qu'une date ou un signalement attend sa relecture | Ce que vous avez envoyé avec le formulaire ou le signalement, sauf votre adresse IP | +| **Cloudflare** | Sert `papazuzu.com` (agenda, affiches, formulaire, miniatures des clips, crews, liens d'invitation) | Votre adresse IP et la requête, comme pour tout site derrière Cloudflare | +| **Telegram** | Prévient l'auteur qu'une date, un clip ou un signalement attend sa relecture | Ce que vous avez envoyé avec le formulaire ou le signalement, la miniature et la date d'un nouveau clip, les identifiants et le motif d'un signalement de crew — jamais votre adresse IP | +| **Les applis avec lesquelles vous partagez une invitation** | *Inviter* ouvre le menu de partage d'Android | Seulement le lien et le nom de la date, envoyés par vous, à qui vous choisissez | ### Publicité et consentement @@ -217,6 +322,11 @@ les contacte plus.) - La position de votre console — égaliseur, delay, faders, dernier module utilisé. - Les échéances d'essai des modules payants, et la possession du déblocage Pro. - Les dates de l'agenda qui vous ont déjà été signalées, pour qu'une date ne soit annoncée qu'une fois. +- Les dates que vous suivez avec *Suivre*, et ce que la dernière vérification a vu de vos crews et + des clips, pour que chaque nouveauté ne soit annoncée qu'une fois. +- Le secret de votre identité crew, chiffré par une clé que garde le Keystore d'Android. Il est + exclu de toute sauvegarde : un nouveau téléphone, ou une réinstallation, démarre une nouvelle + identité. - Vos filtres d'agenda (région, pays, type). Pour choisir le premier filtre, l'application lit le pays de votre réseau mobile ou de votre carte SIM, ou à défaut celui de votre réglage de langue — un code de pays, jamais une position, et aucune autorisation de localisation n'est demandée. Il @@ -228,10 +338,12 @@ les contacte plus.) ## Autorisations - **Internet** — lire les flux, charger l'agenda, servir les annonces. -- **Notifications** — la notification de lecture et ses commandes, et l'annonce des dates ajoutées - à l'agenda dans votre pays (avec l'affiche en miniature). La refuser ne vous prive que de ces - notifications ; la lecture et l'agenda continuent de fonctionner. Les notifications « Nouvelles - dates de l'agenda » peuvent aussi être coupées seules dans les réglages Android de l'application. +- **Notifications** — la notification de lecture et ses commandes ; l'annonce des dates ajoutées à + l'agenda dans votre pays (avec l'affiche en miniature) ; quand quelqu'un rejoint votre crew ou que + son rendez-vous change ; et quand un clip est publié sur une date que vous suivez. La refuser ne + vous prive que de ces notifications ; la lecture, l'agenda et les crews continuent de + fonctionner. Chaque type (« Nouvelles dates de l'agenda », « Crews », « Clips des dates + suivies ») peut aussi être coupé seul dans les réglages Android de l'application. - **Musique et audio** — pour que les Pro Decks lisent la musique déjà présente sur votre téléphone. Vos morceaux sont lus sur place, jamais copiés ni envoyés. Refuser prive seulement les platines de votre bibliothèque ; la radio et le reste de l'application fonctionnent à @@ -249,10 +361,11 @@ les concernant. ## Vos droits -Hormis un événement ou un signalement que vous auriez choisi d'envoyer, l'auteur ne détient aucune -donnée vous concernant. Pour consulter, corriger ou supprimer ce que vous avez envoyé — l'événement, -son affiche, votre adresse e-mail — écrivez à l'adresse ci-dessous ; c'est fait à la main, -généralement sous quelques jours. Pour les données détenues par Google du fait de la publicité ou +Hormis ce que vous avez choisi d'envoyer — un événement, un clip, un signalement, une crew — +l'auteur ne détient aucune donnée vous concernant. Votre identité crew, et tout ce qui s'y rattache, +se supprime aussitôt depuis l'application (*Effacer mon identité crew*). Pour consulter, corriger ou +supprimer le reste de ce que vous avez envoyé — l'événement, son affiche, votre adresse e-mail, un +clip — écrivez à l'adresse ci-dessous ; c'est fait à la main, généralement sous quelques jours. Pour les données détenues par Google du fait de la publicité ou d'un achat, utilisez les outils de Google, ou retirez votre consentement publicitaire dans l'application comme indiqué plus haut.