Политика конфиденциальности
Обновлено: 3 октября 2026 г.
Эта страница — перевод, сделанный для того, чтобы документ можно было прочитать на своём языке. Оригинал — английская версия; при расхождении преимущественную силу имеет английский текст.
Whisprompt построен по принципу privacy-first. Эта политика объясняет, что мы делаем и, что не менее важно, чего мы не собираем. Она распространяется на все приложения Whisprompt — на телефоне, планшете, часах, телевизоре и Mac — и на этот сайт. Если что-то относится только к одному из них, это сказано прямо.
Коротко: ваши скрипты остаются на ваших устройствах и до нас не доходят; никуда больше они не уходят, если вы сами не подключите сторонний сервис (раздел 3). Распознавание речи выполняет сам телефон, и для этого он может обращаться к серверам Apple или Google; установите офлайн-пакет языка — и звук не покидает устройство вовсе. До нас он не доходит ни в том, ни в другом случае. Аккаунт не обязателен, данные мы не продаём. Приложение может измерять, насколько хорошо оно работает, — счётчики и длительности, ни слова из того, что вы пишете или говорите, — но только если вы согласитесь: до вашего «да» не измеряется ничего, вопрос приходит только после того, как вы приложением воспользуетесь, и ваш ответ распространяется на устройства, которые вы связали как свои (раздел 6).
1. Кто отвечает (контролёр данных)
Leonid Kabanov (autónomo), Испания. Контакт: support@whisprompt.app. Полные реквизиты — в разделе Импринт. Мы учреждены в Испании, то есть в Европейском союзе, поэтому статья 27 GDPR, требующая назначить представителя в Союзе, к нам не применяется. Специалиста по защите данных мы не назначали и не обязаны: Whisprompt — не государственный орган, он не ведёт регулярного и систематического наблюдения за людьми в больших масштабах, и ни одна специальная категория данных до нас не доходит. Надзорный орган по месту нашего учреждения — Agencia Española de Protección de Datos (AEPD), aepd.es.
2. Данные, обрабатываемые на устройстве
- Звук с микрофона. Захватывается в реальном времени для слежения за голосом и (при записи) для видео. Он передаётся движку распознавания речи, встроенному в телефон, — Apple на iOS, Google на Android, — и тот, в зависимости от устройства, языка и настроек, может обрабатывать его на серверах соответствующей платформы по её собственным правилам. Установите офлайн-пакет языка, и распознавание будет происходить целиком на устройстве, без обращения к сети. В обоих случаях звук не попадает к нам: серверов распознавания у нас нет, и ни одна запись не хранится ни на одном нашем сервере. Видеофайлы, которые вы сами решили сохранить, остаются на устройстве или в вашем облачном хранилище.
- Ваши скрипты и настройки. Хранятся локально на устройстве (и, если включите, в вашем личном облаке по условиям соответствующего провайдера). Если вы транслируете суфлёр на свои другие устройства, текст передаётся между ними в зашифрованном виде — см. раздел 5.
- Загруженные языковые модели. Хранятся на устройстве. Загрузка модели — это прямой запрос к хосту модели; мы не привязываем к нему вашу личность.
3. Данные, обрабатываемые подключёнными вами сервисами
Некоторые опциональные функции подключаются к сервисам, которые вы авторизуете. Мы выступаем лишь как ваш клиент; каждый провайдер — самостоятельный контролёр со своей политикой:
- Notion и документы, которые вы открываете. При подключении Notion Whisprompt читает выбранные вами страницы как зеркало в режиме read-only по предоставленным вами доступам. Если вы открываете файл с устройства или из облака, он читается для отображения текста. Копии этих доступов не попадают ни на какой наш сервер.
- ИИ-ассистент в операторской станции на Mac. Ассистент не делает ничего, пока вы не введёте собственный ключ провайдера ИИ. После этого каждый запрос уносит целиком открытый текст, выделенный вами фрагмент, вашу инструкцию и всю переписку — напрямую с вашего Mac этому провайдеру, Anthropic или OpenAI в зависимости от ключа, под вашим ключом и вашей учётной записью у него, на его условиях и с его сроками хранения. Ни через один наш сервер это не проходит: мы не видим ни ключа, ни текста. Ключ хранится в связке ключей macOS, не синхронизируется и не едет на ваши другие устройства. В приложениях для телефона и планшета ассистента нет.
- Apple и Google (магазины приложений и подписки). Покупки, бесплатный период, если он предусмотрен, и списания по подписке обрабатывают Apple или Google. Мы не видим платёжных данных; нам поступают лишь сведения о статусе подписки — как именно, описано в разделе 4.
4. Подписка и Pro
Аккаунтов в Whisprompt нет. Входить некуда и создавать нечего, адрес почты мы не запрашиваем ни у одного провайдера, и ни имени, ни адреса у нас для вас нет. Суфлёр, запись и трансляция работают и так, а подписка покупается и восстанавливается без аккаунта. Код необязательного аккаунта в приложении остаётся — вход через Apple, обработчик Supabase, — но он мёртв: включают его ключи, с которыми приложение не собирается, поэтому экрана входа нет, в Supabase ничего не уходит и адрес почты не собирается. Если аккаунт появится, эта страница опишет, что он обрабатывает, — до выпуска, который его принесёт, а не после.
- RevenueCat (управление подписками). Наш обработчик, определяющий, активна ли подписка, независимо от того, оформлена она в App Store или в Google Play. Ему поступают история покупок в этом приложении, идентификатор клиента и идентификатор устройства или установки, который выдаёт приложению операционная система (на устройствах Apple — IDFV), а также технические сведения об устройстве и версии ОС. Идентификатор клиента ни из чего вашего не выводится: до первой покупки это идентификатор, который RevenueCat создаёт себе сам, а с первой покупки — случайный, созданный и хранимый вашим устройством; тот же самый несут и остальные ваши устройства — так одна подписка покрывает их все (раздел 5). Это нужно, чтобы разблокировать Pro и восстановить покупку на ваших устройствах. Рекламные идентификаторы мы не собираем, рекламные интеграции и атрибуцию в RevenueCat не подключаем; эти данные не используются для отслеживания и не объединяются с данными других компаний.
- Удаление того, что у нас есть. Аккаунта нет — удалять нечего, и кнопки для этого в приложении нет. На нашем сервере есть список устройств, которые покрывает ваша подписка; удалить его можно в приложении в любой момент: «Настройки» → «Данные на наших серверах» (раздел 11). Удаление списка не отменяет подписку: она принадлежит вашей учётной записи App Store или Google Play и отменяется там, где оформлена. Тексты и записи в любом случае остаются на устройстве; как очистить само устройство — в разделе 7.
5. Трансляция на ваши другие устройства
Whisprompt умеет вести суфлёр сразу на нескольких ваших устройствах. В одной локальной сети они соединяются напрямую. Если общей сети нет, соединение идёт через наш ретранслятор на Cloudflare Workers:
- Общая библиотека между вашими устройствами. Устройства, которые вы связали как свои, зеркалят библиотеки друг друга: текст, написанный на одном, появляется на остальных, и правка на одном доходит до них. Копии живут на ваших устройствах и ездят между ними так же зашифрованно, как всё остальное здесь: ни на одном нашем сервере копии нет, и за пределы ваших устройств она не выходит, пока вы сами не поделитесь текстом.
- Каждый кадр сессии шифруется на устройстве-отправителе (ChaCha20-Poly1305), а ключ передаётся только внутри приглашения — QR-кода или кода подключения. Ретранслятор видит лишь зашифрованные кадры: ни текста, ни звука, ни видео он прочитать не может.
- Содержимое сессии ретранслятор не хранит. Комната живёт не дольше четырёх часов и затем удаляется. Почтовый ящик, через который ваши устройства находят друг друга, хранит только служебный ключ и отметку времени последней активности — не дольше 30 дней и без какого-либо содержимого.
- Если вы пользуетесь Pro больше чем на одном устройстве, ретранслятор хранит также список этих устройств — чтобы одна подписка покрывала до шести. В нём: идентификатор, который приложение выдаёт устройству, имя, которое устройство о себе сообщает, и даты добавления и последнего обращения. Ни текстов, ни звука, ни видео. Вся запись удаляется, если год ни одно из ваших устройств к ней не обращалось; удалить её самостоятельно можно в любой момент из приложения.
- Как и любой веб-сервис, ретранслятор при подключении видит IP-адрес. Он используется транзитно, для ограничения частоты запросов и защиты от злоупотреблений, и не связывается ни с вашей подпиской, ни со списком устройств, которые она покрывает.
6. Данные об использовании
Whisprompt может измерять, насколько хорошо он работает, и присылать нам эти замеры — счётчики, длительности и коды, ни слова из того, что вы пишете или говорите. Ничего из этого не происходит, пока вы не согласитесь. До вашего «да» нет ни замеров, ни идентификатора, ни каких-либо записей об этом на устройстве. Приложение спрашивает один раз и никогда — в момент, когда вы его только открыли: на вопрос, заданный до того, как приложение хоть что-то сделало, ответить не из чего. Вопрос приходит после того, как ваше первое чтение куда-то дошло, — или, если раньше этого вы подключаете второе устройство, в конце подключения, на одной карточке вместе с вопросом ниже о том, считать ли ваши устройства одним человеком. У этой карточки два ответа и никакого третьего выхода: она не закрывается ни от нажатия рядом с ней, ни по кнопке «назад», — карточка, закрытая случайным касанием, записала бы отказ, которого вы не давали. Пока вы не ответили, не записывается ничего: если карточку убрало с экрана что-то другое — приложение закрылось, его сменил другой экран, — вопрос просто остаётся открытым и вернётся после следующего чтения. А после вашего ответа, любого из двух, он не возвращается вовсе. Ваш ответ распространяется на устройства, которые вы связали как свои, и карточка говорит об этом там, где вы его даёте: устройство, связанное позже, примет этот ответ при следующем соединении и прямо сообщит вам об этом, вместо того чтобы задавать тот же вопрос второй раз. Работает это в обе стороны: выключите замеры на одном из ваших устройств — остальные тоже перестанут. Ответ, данный на устройстве, никогда не перезаписывается пришедшим с другого, поэтому выключение здесь нельзя отменить устройством, которое об этом ещё не слышало. Скажете «нет» — больше ничего в приложении не изменится, и это устройство больше не спросит. Скажете «да» — переключатель останется в настройках приложения, в разделе «Данные об использовании», и выключить его можно в любой момент, не объясняя причин. На чём это держится юридически — в разделе 9; способы отозвать согласие — в конце этого раздела. Выключение останавливает сами замеры, а не только отправку, и удаляет с устройства идентификатор из пункта ниже, всё, что ещё не было отправлено, и заметку о начатом чтении, описанную в пункте «Что измеряется».
- Что измеряется. Счётчики, длительности и коды — и дальше перечислено всё, а не выборка. Для чтения: шло оно по слежению за голосом или на автопрокрутке, сколько длилось, сколько слов было в тексте, до какого процента текста вы дошли, сколько раз вам пришлось взять текст в свои руки, код языка, какой движок распознавания работал, было ли устройство офлайн, шло ли это чтение одновременно на второй экран, управляли ли хоть частью этого чтения с часов и управляли ли с физического пульта — под пультом здесь одинаково и bluetooth-кликер, и перелистыватель страниц, и обычная клавиатура, потому что система сообщает нам их все как одни и те же нажатия клавиш и различить их не даёт; ни то ни другое не говорит, какая кнопка была нажата и сколько раз, — только что чтение так велось, сколько слышимого звука успела набрать проверка на сломавшийся движок ниже — одним из четырёх интервалов (совсем ничего, меньше десяти секунд, меньше минуты, минута и больше), без числа секунд и только когда распознавание речи вообще работало: это её собственный счётчик, а не мера того, сколько вы говорили, потому что звук тише того уровня, который она слушает, в него не идёт вовсе, каждый замер громкости от движка добавляет не больше половины секунды, а первый замер после каждого запуска не добавляет ничего — так что на движке, который сообщает уровень раз в секунду, там набирается доля того времени, что вы на самом деле говорили; по нему видно, могла ли эта проверка вообще сработать на вашем устройстве, и о сказанном он не говорит ничего, — а также чем оно кончилось: ничего не сломалось; чтение вообще никуда не дошло; или сломалось распознавание речи — и если сломалось, то каким из четырёх способов ниже. Если у чтения не оказалось конца — система закрыла приложение, пока оно было в фоне; кончился заряд; приложение отказало; или вы смахнули его прямо посреди чтения, — измерить всё перечисленное выше нечем: то, что вело замер, пропало вместе с остальным. Поэтому, пока чтение идёт, на устройстве лежит короткая заметка о том, что было известно на его старте, и ничего сверх этого: слежение за голосом или автопрокрутка, код языка, сколько слов было в тексте и какой движок распознавания работал. Заметка снимается в тот момент, когда чтение нормально заканчивается. Если приложение при следующем запуске находит её на месте, оно отправляет эти четыре факта, удаляет заметку и больше их не отправляет — об одном оборванном чтении сообщается один раз. Больше о таком чтении не сообщается ничего: ни сколько оно длилось, ни до какого места вы дошли, ни чем оно кончилось, — потому что измерить это было уже некому. Заметка пишется только пока замеры включены, не содержит ничего кроме этих четырёх фактов и удаляется вместе со всем остальным, когда вы их выключаете. Когда слежение вас теряет: код языка, движок, нашло ли оно вас снова вообще и сколько времени на это ушло, если нашло. Когда ломается само распознавание речи: код языка, движок, сколько секунд этот движок проработал, был ли он запущен из-за смены языка посреди текста, а не вашим нажатием на «плей», и что именно случилось из четырёх — он продолжал слышать звук и перестал возвращать слова; он вообще перестал что-либо говорить, так что пропал и показатель микрофона; он отказал и его подхватил другой движок; или он отказал и подхватить было некому. Когда приложение спрашивает у вас то, что стережёт система, — микрофон или камеру, — какое из двух оно спросило и какой из трёх ответов пришёл: вы разрешили, вы отказали или система решила отказ заранее и не показала вам никакого окна. И когда оно идёт искать Bluetooth-пульт — отказали ли ему в разрешении находить устройства рядом; только отказ, потому что система, которая согласилась, просто начинает искать и не сообщает ничего, что можно было бы записать. Только там, где спрашивает: приложение постоянно перечитывает уже данный вами ответ, но это не замер и никуда не отправляется. Один раз за установку: успело ли ваше первое чтение перевалить за половину в течение часа после установки, дня, недели, месяца — или позже; интервал, а не время. Для загрузки языковой модели: код языка, размер в байтах и началась ли она, завершилась или сорвалась. Для связи с другим устройством: чем она кончилась и каким способом устройства нашли друг друга. Для трансляции: на какой экран она шла (телефон, планшет, компьютер, телевизор, часы или экран, вид которого приложение не распознало), сколько длилась и оборвалась ли она сама. Для попытки вывести текст на экран — удалась она или нет: на какой экран она была нацелена, насколько это устройство знало до попытки (а часто не знало вовсе), и что из шести случилось: экран принял; принял, но одно из двух приложений на версию отстаёт, и более новые части выключены; никто не ответил ни по одному пути; экран отверг код; версии разошлись слишком далеко, чтобы вообще говорить; или это устройство не смогло совершить попытку. О самом тексте — ничего, и адресов ни одного из устройств тоже. Для карточки, которая появляется, когда в тексте больше одного языка: закрыли вы её или перешли с неё на экран подписки. О самом тексте — ничего, и о том, какие в нём были языки, — тоже. Для экрана подписки: у какой из закрытых функций вы стояли, когда он появился; или что вы открыли его сами из настроек, а не упёрлись во что-то; или что вы нажали на строку под своими же сообщениями, где сказано, что подписчику отвечают первым. Для попытки покупки: какой из четырёх видов был план — месячный, годовой, бессрочный или тот, период которого приложение не распознало, — и чем всё кончилось — покупка прошла, вы её отменили, магазин оставил её в ожидании, товар оказался недоступен или произошла ошибка. Для восстановления покупок: восстановилось ли что-то, не нашлось ли восстанавливать нечего, была ли отмена или ошибка. Рядом с идентификатором из пункта ниже хранятся и обновляются ещё два факта о подписке: действует ли Whisprompt Pro на этом устройстве сейчас и куплен ли он здесь, а не на другом вашем устройстве. Вместе со всем этим: момент, когда это произошло, версия приложения, платформа и то, сколько времени эта установка уже ведёт замеры, — интервалом, без даты и без числа дней: первый день, первая неделя, первый месяц, от одного до трёх месяцев, от трёх до шести, от шести до двенадцати, от года до двух или дольше. Отсчёт идёт со дня, когда вы разрешили замеры, потому что до этого для них ничего не хранится, и, в отличие от интервала первого чтения выше, он уезжает с каждым замером, а не один раз. И об устройстве, на котором сделан замер: какого оно рода — телефон, планшет, компьютер, телевизор или часы, и ничего конкретнее этого, — какая на нём операционная система, номер её основной версии и только он («18», а не «18.3.1»), на каком языке интерфейс самого приложения и какая страна выставлена на устройстве. О двух вещах стоит сказать точнее. Страна берётся из региональных настроек самого устройства: это страна, которую вы выбрали в настройках, а не вычисленная по сетевому адресу, через который вы подключились, — см. пункт «Кто обрабатывает» ниже. А версия — только основной номер, потому что именно он говорит нам, можно ли отказаться от старой системы; остальное сказало бы больше о вашем конкретном устройстве, чем о системе. Ещё про чтение. Откуда взялся его текст — один из семи ответов: стартовый текст, который мы пишем вам при первом запуске; тот же стартовый после того, как вы его правили; ваш собственный — набранный здесь, надиктованный здесь, вставленный или отражённый с другого вашего связанного устройства, и это один ответ, потому что всё это ваше письмо; файл; или документ, отражённый из Notion, из Google Docs или из iCloud. Никогда ни его названия, ни имени файла, ни адреса, ни слова из него. Какой из пяти стилей чтения был на экране и на какой цветовой паре его читали: на одной из шести, что идут в приложении, или — если пару вы собрали сами в редакторе тем — только что она одна из ваших. Никогда её название и никогда идентификатор, который приложение ей выдало. Пара, названная по человеку или по случаю, — это то же письмо, что и название текста, а идентификатор — это то же название в одном шаге. И было ли задано целевое время для этого текста до начала чтения — что оно было задано, но никогда какое, потому что длительность рядом с числом слов в той же строке описывала бы один конкретный документ. Про текст, попавший в вашу библиотеку, каким бы путём он ни попал: откуда он — те же семь ответов и ещё восьмой: что вы его надиктовали, — код языка, который он объявляет, и сколько в нём слов. Восьмой ответ известен только в момент сохранения и вместе с текстом не хранится: когда вы читаете надиктованный текст, он считается одним из ваших собственных, как сказано выше. Никогда ни названия, ни слова из него. Стартовый текст, который мы пишем вам при первом запуске, не считается: считать их значило бы считать установки, а это не измеряется. Про запись: звук это был или видео, сколько целых секунд она шла и каким из трёх способов кончилась — сохранилась, вернулась пустой, потому что до файла ничего не дошло, или сорвалась. Ничего про файл: ни имени, ни размера, ни разрешения, ни того, какой микрофон или какой объектив, и ни секунды того, что записано. Запись, которой не случилось потому, что вы отказали в микрофоне или камере, считается только тем отказом выше, а не записью. И про промокод — наш собственный, набранный на экране погашения самого Whisprompt: что код гасили и что из девяти вернулось. Сработал; такого кода нет; его уже использовали; он истёк; партия, к которой он относится, кончилась; эта сборка приложения вообще не принимала наши коды — маршрута ещё нет или его выключили; с этого устройства подряд перебрали слишком много; до нас вообще не достучались; или сорвалось по причине, которой нет среди перечисленных. Никогда сам код и ни один его знак: промокод — это предъявительский секрет ценой в подписку, и лежащий в замере он лежит в чужих записях. А если вы открываете экран погашения самого магазина, тот, что показывают Apple или Google, — только то, что его открыли, и ничего больше: ни один из магазинов не сообщает приложению, что было набрано на их экране и чем это кончилось. И когда вы сужаете набор языков, между которыми может выбирать определитель, — в карточке языка самого текста или в настройках для новых текстов, — сколько языков было в этом наборе до изменения и сколько после, и не вернули ли вы его к «Авто», то есть к выбору из всех языков, которые есть в приложении. А если вы попросили нас добавить язык, которого приложение пока не знает: какой это был язык, по его коду, и из какого из трёх мест вы попросили — из карточки языка текста, из настроек по умолчанию или из выбора языка приложения. Это лишь замер; сама просьба доходит до нас, разрешили вы какие-либо замеры или нет, — что она несёт, сказано в разделе 6b. А когда эта версия приложения устарела и её нужно обновить: что из четырёх произошло с уведомлением об этом — его показали; его придержали, потому что вы были посреди чтения; его отложили, потому что вы нажали «Отложить»; или его отозвали, так и не показав, потому что мы снова понизили минимальную версию, — и число целых секунд: для отложенного уведомления — сколько оно пробыло на экране, в остальных случаях — сколько прошло с тех пор, как устройство при этом запуске приложения впервые узнало, что его нужно обновить.
- Что не измеряется никогда. Ваши тексты, их названия, имена файлов, которые вы открываете, звук, записи, расшифровки, имена ваших устройств, ваши контакты. Код языка уезжает; название текста — нет. Из замеров о подписке, перечисленных выше, не уезжает ни цена, ни валюта, ни чек, ни номер заказа или транзакции, ни идентификатор товара в магазине, ни какие-либо платёжные данные, ни текст ошибки от магазина, — уезжает лишь то, какая из восьми названных функций открыла экран, какой из четырёх видов плана и какой из заранее заданного набора исходов. И не то, на скольких устройствах вы пользуетесь подпиской. Каждый замер — фиксированный набор чисел, длительностей и кодов, так что написанному, названному или оплаченному вами там просто негде появиться.
- Это не анонимно, и мы предпочитаем сказать это прямо. Замеры с этого устройства несут один постоянный случайный идентификатор. Он принадлежит этой установке приложения и больше ничему: его создаёт сам измеряющий компонент — в тот день, когда вы разрешили замеры, и ни минутой раньше, — используется он только для этих замеров и не является тем, под которым живёт ваша подписка, — тот с замерами не отправляется вовсе, так что две записи хранятся врозь и ни одна не несёт идентификатора другой. По замерам не видно, какие из ваших устройств принадлежат одному человеку: пока вы не дадите отдельное разрешение из пункта ниже, телефон и планшет приходят как две несвязанные установки и считаются двумя. Идентификатор заменяется не позже чем через тринадцать месяцев после создания — независимо от того, пользовались ли вы приложением всё это время, — и новый со старым не склеивается, так что запись об одной установке не может стать длиннее этого срока. Выключение замеров удаляет идентификатор с устройства. Случайный — но всё же идентификатор, и поэтому здесь стоит этот абзац, а не заявление, что замеры анонимны.
- Считать ваши устройства одним человеком — отдельное разрешение, выключенное, пока вы его не дадите. Если вы пользуетесь Whisprompt больше чем на одном устройстве, приложение может один раз спросить, должны ли замеры со всех них нести один общий идентификатор, — чтобы телефон и планшет считались одним человеком, а не двумя. Этот вопрос меняет только идентификатор и ничего из того, что измеряется: тот же список выше, те же свойства, ни одного лишнего события и ни одного нового получателя. Пока вы не согласитесь, оно выключено; отказ ни на что другое в приложении не влияет; включить или выключить позже можно в том же разделе настроек. Как и в случае с замерами выше, об этом спрашивают один раз, а не на каждом устройстве: скажете «да» — остальные устройства вашей подписки примут этот ответ при следующем соединении, общий идентификатор придёт к ним по тому же зашифрованному каналу, которым ваши устройства и так пользуются между собой, и вместе с ним не приедет ничего другого про замеры. Дойдёт он только до того устройства, где вы разрешили замеры: на любом другом считать было бы нечего. А «нет» никуда не передаётся, поэтому устройство, подключённое позже, может задать вопрос о счёте само; отказать снова — одно нажатие, и его запомнят. У этой карточки тоже два ответа и никакого третьего выхода, и ничего не записывается, пока вы не ответите. При включении оно действует с этого момента вперёд: уже собранные замеры заново не переподписываются, а идентификатор, под которым эта установка работала раньше, не отправляется и с общим не связывается. Один случай стоит назвать отдельно. Если эта установка уже несёт общий идентификатор и затем принимает другой — так бывает, когда вы связываете её с устройствами, у которых уже есть свой общий, — следующий замер один раз несёт предыдущий общий идентификатор, чтобы записи одного человека не читались как записи двух: одного, который перестал существовать, и другого, который взялся ниоткуда. Так уезжает только общий идентификатор; идентификатор установки из пункта выше в этом поле не отправляется никогда, ни при одном переходе. При выключении установка возвращается к собственному идентификатору — новому, а не тому, что был раньше. Включённым при выключенных замерах оно быть не может: считать было бы нечего — и если вы выключите замеры, общий идентификатор удалится с устройства вместе с другим. А если вы подключаете второе устройство раньше, чем вопрос о замерах вообще был вам задан, приложение может задать оба вопроса вместе — один раз за всю жизнь приложения, на одной карточке, где сказано, что представляет собой каждый из них. Эта карточка и есть тот единственный вопрос о замерах, а не добавочный: на этом устройстве после неё ни один из двух вопросов больше не задаётся. «Да» там — это «да» на оба, потому что оба были названы; «нет» отказывает обоим. Устройства свяжутся при любом ответе, и ни один ответ никогда не принимается за другой.
- Кто обрабатывает. Amplitude, наш обработчик, на его европейской точке приёма. Каждый запрос просит Amplitude ничего не выводить из адреса, с которого он пришёл, так что ни город, ни регион, ни какое-либо местоположение из того, откуда вы подключились, не вычисляется. Страна из списка выше — не исключение из этого: это та, что выставлена на вашем устройстве, она уезжает потому, что мы её туда положили, и она была бы той же самой в любой сети.
- Как отозвать согласие и что тогда будет. Два способа, и достаточно любого. В приложении: «Настройки» → «Данные об использовании» → выключить переключатель. Или напишите на support@whisprompt.app, что отзываете согласие, — и мы прекратим. Отозвать его не сложнее, чем дать, — столько же нажатий. Объяснять причину не нужно, и мы её не спрашиваем. Выключение считается вашим возражением, а не настройкой одного аппарата: остальным вашим связанным устройствам об этом сообщат по тому же зашифрованному каналу, который у них уже есть с этим устройством, и они тоже перестанут измерять при следующем соединении, — а если какое-то спит, оно узнает, когда вернётся: сообщение повторяется, пока не дойдёт. Обратное включение едет не так далеко: оно доходит до устройства, которое вы связали, но на котором вопрос ещё не задавали, — оно примет ответ и прямо об этом скажет, — и никогда не вытесняет ответ, который устройство дало за себя, так что выключенное здесь устройство останется выключенным, пока вы не включите замеры на нём самом. Асимметрия эта намеренная. Возражение против замеров исходит от человека, и пусть лучше оно дойдёт дальше, чем нужно, чем не дойдёт куда следует; а разрешение не должно перебивать ответ, уже данный кем-то на устройстве, которое он держит в руках. Ваш ответ помнится на устройстве и после перезапусков, и после обновлений приложения, и переживает замену идентификатора через тринадцать месяцев: новый идентификатор не возобновляет замеры для того, кто их выключил. Если хотите, чтобы удалили и уже отправленные замеры, попросите нас — раздел 11.
6a. Отчёты о сбоях — отдельное разрешение, выключенное, пока вы его не дадите
Если приложение перестало работать, оно может прислать нам отчёт об этом. Это не часть замеров из раздела 6: другая цель, другой получатель и свой отдельный переключатель. Вопрос задаётся на отдельной карточке, прямо перед вопросом о замерах, и отвечается отдельно — «да» одному не является «да» другому ни в одну сторону. Эта карточка устроена так же, как карточка о замерах: два ответа, никакого третьего выхода и ничего не записывается, пока вы не ответите.
Он выключен, пока вы его не включите. До этого для него ничего не устанавливается и ничего не отправляется — из этого правила исключений нет вовсе. Исключения есть из хранения, и их ниже два. Оба существуют, чтобы задать вам вопрос, а не чтобы что-то собрать; оба про сбой, который уже с вами случился; и ни один ничего не отправляет, пока вы не ответите.
Первое — сбой при запуске. Если Whisprompt не запускается вовсе, задать вам вопрос позже уже негде, поэтому экран ошибки задаёт его прямо там. Если отчёты о сбоях у вас уже включены, один отчёт об этом сбое отправляется, и экран сообщает, что отправил. Если вы их уже выключили, ничего не предлагается и ничего не отправляется. Если вас никогда не спрашивали, экран спрашивает — отправить этот отчёт, не отправлять или отправлять и впредь, — и до вашего выбора с устройства не уходит ничего. Отчёт, отправленный так, меньше описанного ниже: он не несёт никакого идентификатора вовсе и говорит, где приложение остановилось, какой оно было версии и какая это операционная система, — ничего больше об устройстве, ни языка интерфейса, ни того, что происходило перед этим. Получатель тот же — Sentry, те же серверы в Европе; сказанное ниже про интернет-адрес, с которого приходит отчёт, относится и к нему. Ответ «отправлять и впредь» — тот же ответ, что и переключатель в настройках, и выключается он там же. Тот же экран с теми же тремя ответами появляется и тогда, когда отказывает отдельная часть приложения на ходу, а не при запуске. Это касается только приложения для телефона и планшета: у приложений для Mac и телевизора такого экрана нет.
Второе — сбой, о котором мы не смогли спросить вовремя: приложение исчезло раньше, чем вы успели ответить, или вы закрыли его вместо ответа. Если вас никогда не спрашивали, один отчёт об этом остаётся на вашем устройстве, и при следующем нормальном запуске приложение скажет об этом внизу экрана и задаст вопрос. Это ровно один отчёт, а не очередь: второй сбой его не заменяет. Ничего из него не уходит, пока вы там не согласитесь. Он удаляется, когда вы ответили любым образом, когда вы велели той полоске его удалить, когда отчёты о сбоях выключены — и в любом случае через семь дней после того, как был сохранён. Это единственное, что хранится на вашем устройстве ради отчётов о сбоях до того, как вы на что-либо согласились, и мы предпочитаем назвать это прямо, а не позволить абзацу выше подразумевать, что там пусто: оно существует ради того, чтобы вопрос вообще можно было задать. Так возвращаются те сбои, которых мы иначе не увидели бы никогда, — первые запуски совсем новой установки, самые тяжёлые из всех, и принадлежали они ровно тем людям, до кого вопрос ещё не дошёл. Чего так не вернуть — сбой, который обрабатывает сама операционная система, ниже приложения: для них отчёты по-прежнему нужно включить заранее.
- Что в отчёте. Место, где приложение остановилось, — технический след сбоя, — тип устройства, система и её версия, версия приложения, язык интерфейса и короткий список того, что происходило перед этим: какие экраны открывались, предупреждения о нехватке памяти, уход приложения в фон.
- А если сбой случился в суфлёре — то и что делал суфлёр. Распознавание отказывает в конце цепочки событий, и одной строки «отказало» для починки не хватает — поэтому отчёт о сеансе чтения несёт короткую ленту этого сеанса: запуски и остановки движка распознавания и их причины, язык абзаца, до которого вы дочитали, переходы с языка на язык и удались ли они, шло ли распознавание на устройстве или через серверы платформы, сколько времени ушло до первых распознанных слов, когда слежение теряло ваше место и когда находило снова, переходы экрана между ожиданием, слушанием, паузой и остановкой, сколько успела скачаться языковая модель, если она качалась, и момент, в который отказ был объявлен. Ещё лента несёт ФОРМУ того, что вы читали, и место в нём: сколько в тексте слов и абзацев, сколько языков он смешивает, до какого по счёту слова вы дошли и в какие моменты вы брали текст в свои руки — перемоткой или перетаскиванием. Именно они и придают смысл остальному: позиция, которую не с чем соотнести, не говорит ничего, а скачок, которого распознавание не делало, читается как сбой, пока страница не скажет, что его сделала рука. Каждая строка — это счётчик, код, код языка или длительность. Рядом с ними едет ещё одно число: сколько памяти занимало само приложение в этот момент, в целых мегабайтах — это правдоподобная причина сбоя, и увидеть её иначе неоткуда; о вас и о том, что ещё есть на устройстве, оно не говорит ничего. Ни слова из текста, никогда — ни названия, ни строки из него, ни того, что распознавание услышало, и никаких ваших имён или имён ваших устройств. Время в ней указано промежутками — «за четыре секунды до сбоя», — а не по часам: время по часам несёт часовой пояс, а часовой пояс — это грубое местоположение.
- Что вычищается до отправки. Отчёт о сбое собирает не наш код, поэтому мы разбираем его и убираем: имена файлов и пути, веб-адреса дальше названия сервиса, адреса почты, сетевые адреса, имя вашего устройства и часовой пояс. Ни снимка экрана, ни копии экрана в отчёт не кладётся никогда — на этом экране ваш текст, — и ни один отчёт не несёт ни одного вашего идентификатора из тех, что есть у нас. Остаётся стек вызовов, вид сбоя и вид устройства.
- Единственное, что наше приложение вычистить не может. Sentry определяет примерное местоположение — страну и город — по интернет-адресу, с которого пришёл отчёт. Это происходит на их стороне, после всего, что наше приложение может отредактировать, поэтому, в отличие от замеров выше, отключить это для каждого отчёта мы не можем. За это отвечают две настройки проекта: одна запрещает хранить сам адрес, другая удаляет определённое по нему местоположение. Первая включена. Там, где не включена вторая, страна и город остаются при отчёте столько же, сколько хранится сам отчёт, — не дольше 90 дней. Мы говорим об этом здесь, а не позволяем предыдущему пункту намекнуть, будто мы убрали то, чего не убирали.
- Идентификатор. Отчёты одной установки несут случайный идентификатор, который сборщик отчётов делает сам для себя, — чтобы десять сбоев с одного устройства читались как одно устройство, а не как десять. Это не тот идентификатор, под которым хранятся замеры, и не тот, которым пользуется ваша подписка.
- Кто обрабатывает. Sentry, наш обработчик, на своих серверах в Европе.
- Как отозвать и что тогда будет. «Настройки» → «Отчёты о сбоях» → выключить. Отправка прекращается, а то, что ещё ждало отправки, удаляется с устройства. Ваш ответ на этот вопрос едет так же, как ответ про замеры: устройство, которое вы связали и на котором вопрос ещё не задавали, принимает уже данный вами ответ и прямо об этом сообщает; устройство, ответившее за себя, остаётся при своём ответе; а выключение отчётов доходит до ваших связанных устройств и там, где они уже ответили. На чём это держится юридически и что отзыв отменяет, а что нет, — в разделе 9.
Мы не кладём ключ обработчика в выпуск, пока не действует соглашение об обработке данных с ним. Что есть у Sentry помимо присланных людьми отчётов — это наши собственные тестовые отчёты с машины разработчика, отправленные, чтобы проверить, что имена, пути и адреса действительно вычищаются. Они наши, а не ваши, и мы их удаляем.
6b. То, что вы отправляете нам сами
В приложении есть экран «Отправить отзыв». Пока вы не нажали «Отправить», к нам не уходит ничего; когда нажали — уходит то, что вы написали, плюс то из необязательного, что вы решили приложить. Это не замер и не отчёт о сбое: текст пишете вы, что приложить — решаете вы, и используется он только чтобы вам ответить и починить то, о чём вы сообщили.
После отправки приложение справляется о судьбе обращения. Пока какое-либо из ваших обращений ещё открыто — ожидает рассмотрения, принято в работу или ожидает вашего ответа на вопрос, который мы задали, — или было закрыто не больше тридцати дней назад, приложение спрашивает у нашего сервера, в каком оно сейчас состоянии, вместе с короткой пометкой, если мы её написали: при запуске приложения, когда вы в него возвращаетесь, и раз в час, пока оно открыто, но не чаще одного раза в пятнадцать минут. Когда вы открываете «Мои обращения» и когда дописываете там подробности, приложение спрашивает о том же по всем обращениям, отправленным с этого устройства, включая уже выполненные и те, что мы не планируем делать. В этом вопросе нет ничего, кроме идентификаторов ваших же обращений, которые приложение сохранило при отправке: ничего нового о вас при этом не собирается, и это единственное здесь, что происходит без вашего нажатия. Ответы хранятся на устройстве, чтобы экран читался и без сети, и исчезают вместе с приложением. Если мы попросим уточнить, то, что вы напишете в ответ, уйдёт новым обращением — по тем же правилам и с тем же, что уходит всегда.
Что уходит с сообщением всегда — потому что обращение, которое не к чему привязать, нечем и отработать: версия и номер сборки приложения, операционная система и её версия, модель устройства, язык и регион, выставленные на устройстве (например, es_ES — это испанский язык в Испании), и язык, на котором показан интерфейс самого приложения. С ними уходит и случайный идентификатор подписки из раздела 4, если он на этом устройстве есть, — а есть он с первой покупки на этом устройстве или с того момента, как его связали с устройством, где такая покупка была, — для одной-единственной проверки, описанной ниже, после которой наш сервер его не хранит. Экран называет всё это до отправки, так что, пока вы пишете, вы уже знаете, что уйдёт.
Что уходит, только если вы это добавили. Файлы — до трёх, снимки экрана или короткая запись экрана, выбранные вами из вашей же галереи; мы получаем то, что вы приложили, и ничего сверх того. Адрес для ответа, если ответ вам нужен; без него мы всё равно прочитаем каждое слово — и просто не будем знать, кто написал. И идентификатор замеров из раздела 6, за переключателем, который появляется, только когда прикладывать есть что: именно он позволяет посмотреть, как приложение вело себя до того, как вы написали.
Единственное, что мы выясняем сами, — пришло ли сообщение от подписчика, чтобы ответить на него первым. Устройство отправляет случайный идентификатор подписки из раздела 4, наш сервер спрашивает у RevenueCat, действует ли подписка, и записывает только ответ — да или нет, — но не сам идентификатор. Поэтому связи между тем, что вы сказали, и тем, что вы купили, не возникает.
Обращения хранит для нас Cloudflare на серверах в Западной Европе: текст — в базе данных, файлы — в объектном хранилище, и то и другое под номером обращения, который приложение показывает вам после отправки. Они хранятся два года и затем удаляются автоматически, а по вашей просьбе — раньше: назовите этот номер или что-то ещё, по чему обращение можно найти. Их читаем мы — и модель, о которой речь дальше; ни для чего другого они не используются: ни для замеров, ни для профилирования, ни для обучения чьего-либо ИИ, ни для решений о вас.
Первой их читает машина, и она не наша. Каждое новое обращение сначала читает модель ИИ — Claude компании Anthropic, — которой мы поручили одно дело: понять, о чём обращение, насколько оно важно и к какому месту приложения относится, и набросать, что мы могли бы ответить. Ничего из того, что видно вам, она не решает. Статус и пометка на экране «Мои обращения», письмо вам, задача в нашем трекере — всё это делается только по нашему слову, после того как кто-то из нас прочёл, что она предлагает. Для этой работы то, что вы отправили, целиком или частью получают четыре сервиса помимо Cloudflare:
- Anthropic, США, запускает модель и получает каждое обращение целиком: то, что вы написали, адрес для ответа, если вы его дали, всё перечисленное выше, что уходит с сообщением всегда, от подписчика ли оно, идентификатор замеров, если вы его приложили, и каждый приложенный файл — модель открывает и просматривает их все. Сам идентификатор подписки к ней не попадает никогда. Прочитанное моделью остаётся в записи этого прогона, в нашей учётной записи у Anthropic, а учётная запись настроена так, чтобы Anthropic не обучал на этом свои модели.
- Telegram, компания за пределами Европейской экономической зоны, доставляет нам сводку модели, а обратно — наши указания. По каждому обращению в сводке есть его номер, вид обращения, устройство, версия приложения и язык, строка-другая о том, что вы написали, — возможно, с цитатой, — строка с описанием картинки, если вы её приложили, и ответ, который предлагает модель. Вашего адреса почты там не бывает никогда, как и самих файлов.
- Google, чьи серверы находятся в США и других странах, доставляет наш ответ, если мы отвечаем вам письмом: оно уходит из нашего ящика Gmail на указанный вами адрес, с номером обращения в теме, и переписка остаётся в этом ящике.
- GitHub, США, хранит наш трекер задач — закрытый. Если по вашему сообщению там заводится задача, в ней есть номер обращения, устройство, версия приложения и суть проблемы, изложенная нашими словами, — но никогда не ваш адрес почты.
Эти четыре — не наши обработчики из раздела 10: каждым из них мы пользуемся на его собственных условиях, как любой его пользователь, и никакое соглашение об обработке данных не связывает их с нами. Не доходит до них и ночное удаление. Оно охватывает нашу базу данных и файловое хранилище в Cloudflare — там же хранится и каждая сводка, отправленная в Telegram, два года со дня отправки, — и ничего за их пределами. То, что есть у этих четырёх, остаётся там, пока мы не удалим это вручную, и когда вы просите удалить ваше обращение, мы удаляем и это — во всех четырёх местах и в этих сводках. На каждой копии стоит номер обращения, по нему мы её и находим. После того как мы удалили прогон из своей учётной записи, у Anthropic по его условиям есть 30 дней, чтобы стереть его из своих систем.
Одно предупреждение про картинки: снимок экрана содержит всё, что было на экране в тот момент, включая текст, который вы читали. Прикладывайте только то, что готовы нам отдать, а мы удалим то, что нам не нужно.
Просьба добавить язык. Там, где приложение показывает язык, на котором оно пока не говорит, можно попросить нас его добавить. Нажатие «Попросить» отправляет нашему серверу две вещи и ничего сверх них: код языка и случайный ключ, который эта установка создаёт, когда вы просите впервые. Ключ нужен, чтобы просьба, ушедшая дважды из-за плохой связи, не посчиталась за две установки, которым нужен один и тот же язык. Просьба уходит независимо от того, разрешили ли вы замеры из раздела 6: это то, о чём вы нас попросили, а не то, что мы измерили. Она хранится в Cloudflare в Западной Европе, рядом с обращениями, два года со дня поступления и затем удаляется автоматически; кроме нас её никто не читает, и никуда больше она не уходит. Ключ нигде не показывается, даже вам, и ничто из того, что мы храним рядом с ним, не говорит, чей он, — поэтому же мы и не можем отыскать вашу просьбу, чтобы удалить её раньше. На устройстве ключ хранится, пока вы не сотрёте устройство или не удалите приложение.
6c. Вопросы к помощи ИИ
Поиск вверху Настроек может передать вопрос помощи ИИ. Ничего не отправляется, пока вы не нажмёте «Спросить ИИ», и тогда уходит только это: слова, которые вы набрали, язык приложения, настройки, которые встроенный поиск нашёл по этим словам, и случайное число, которое приложение создаёт для этой установки. Никогда — ваши тексты, записи или что-либо ещё с устройства.
На вопрос отвечает наш сервер в Cloudflare: открытая модель ИИ, которая работает по руководству самого приложения. Cloudflare не обучает на полученном никакие модели, а мы не храним ни вопрос, ни ответ: они существуют, только пока пишется ответ. Ответ показывается с пометкой, что его написал ИИ, потому что он может ошибаться.
Чтобы пресекать злоупотребления, сервер хранит под этим случайным числом счётчики — сколько раз устройство спрашивало за последнюю минуту и сколько раз за последний час спросило что-то не о Whisprompt, — а если такое повторяется, приостанавливает помощь ИИ для этого устройства: сначала на минуту, затем каждый раз вдвое дольше, но не больше суток. Сами вопросы не хранятся никогда. Счётчики удаляются через час после последнего такого вопроса или через сутки после последней приостановки. Ещё сервер считает вопросы, пришедшие с одного интернет-адреса (IP), чтобы одно место не могло израсходовать помощь, рассчитанную на всех: сверх установленного числа за час или за сутки с этого адреса придётся подождать. Сам адрес не хранится — только его необратимый отпечаток (хэш), который меняется каждые сутки, — а эти счётчики удаляются через сутки после последнего вопроса. Приостановка ничего не решает о вас — она касается только помощи ИИ на этом устройстве. Основание — ваше согласие (ст. 6(1)(a) GDPR), которое вы даёте каждый раз, нажимая «Спросить ИИ».
7. Стирание устройства перед тем, как оно уйдёт из ваших рук
В настройках приложения, в разделе «Данные об использовании», есть кнопка «Стереть это устройство». Её и следует нажать перед продажей, возвратом, сдачей в трейд-ин или передачей устройства другому человеку — Условия об этом просят.
Она удаляет с этого устройства: ваши тексты, ваши записи, скачанные голосовые модели, выданные вами подключения к сервисам вроде Notion, идентификатор замеров и все ответы про приватность, которые вы на нём дали. Ещё она выводит устройство из числа ваших связанных, так что оно перестаёт зеркалить библиотеку и делиться подпиской. На остальных ваших устройствах остаётся всё.
Подписки это не касается. Она принадлежит вашей учётной записи App Store или Google Play и восстановится на следующем устройстве.
Два ограничения, названные прямо. Если в момент стирания устройство было офлайн, локальная очистка всё равно доходит до конца, но остальным вашим устройствам об этом не сообщат; приложение так и скажет, а убрать его из списка устройств можно на любом из них. И замеры, отправленные до стирания, им не отзываются — для них есть запрос на удаление в разделе 11.
8. Чего мы НЕ собираем
- Нет рекламных идентификаторов и сторонних рекламных SDK.
- Нет аналитики и трекинга на сайте. В приложении — вообще ничего, пока вы не согласитесь, а после согласия только замеры из раздела 6 и ничего сверх них: ни рекламы, ни профилирования, ни слежения за вами по приложениям и сайтам других компаний.
- Никаких отчётов о сбоях, пока вы сами их не включите, и ничего опознающего вас в самом отчёте — см. раздел 6a.
- Нет продажи или передачи персональных данных в смысле GDPR.
Сайт не использует cookie. В браузере он хранит две настройки: тему, которую вы задаёте кнопкой с солнцем и луной в шапке, и язык — чтобы в следующий раз whisprompt.app открылся на том языке, на котором вы читали в прошлый раз. Обе доступны только этому сайту, ни одна вас не опознаёт, ни одна не передаётся ни нам, ни кому-либо ещё, и обе исчезают, когда вы очищаете данные этого сайта в браузере. Сайт обслуживается Cloudflare, который видит адрес, с которого вы подключились, — как любой веб-сервер, — и выводит из него только страну, чтобы показать цену вашего магазина.
9. Правовые основания (ст. 6 GDPR)
Обработка звука и текстов для работы суфлёра выполняется для предоставления запрошенной вами функциональности (ст. 6(1)(b) — исполнение договора / по вашему запросу). Опциональные источники, права на подписку и восстановление покупок — на том же основании. Защита ретранслятора от злоупотреблений опирается на наш законный интерес (ст. 6(1)(f)).
Всё из раздела 6 держится на вашем согласии (ст. 6(1)(a)): и сами замеры, и счёт ваших устройств как одного человека под общим идентификатором. На вашем согласии держатся и отчёты о сбоях из раздела 6a — это третье разрешение, не входящее ни в одно из двух: сборщик отчётов хранит данные на вашем устройстве и для работы суфлёра не нужен, так что опереть его не на что, кроме вашего «да». Все три спрашиваются отдельно и отзываются отдельно в любой момент; отозвать не сложнее, чем дать, и не большим числом нажатий. Отзыв действует с этого момента: он не делает незаконным то, что было сделано, пока согласие действовало, и сам по себе не удаляет уже отправленное — об этом нужно попросить, и раздел 11 говорит как. Замеры и отчёты о сбоях отвечаются за человека, а не за аппарат: данный вами ответ доходит до устройства, которое вы связали и которое ещё не спрашивали, — оно прямо сообщает вам, что приняло его, — и никогда не вытесняет ответ, уже данный на устройстве. Счёт устройств спрашивают один раз по близкой причине: это факт о наборе устройств, а не о каком-то одном из них, и «да» на него передаётся остальным устройствам той же подписки. Отзыв едет дальше всех: он доходит до ваших устройств и там, где они уже ответили, — возражение исходит от человека, и между тем, чтобы оно дошло до одного устройства лишнего, и тем, чтобы одно продолжало измерять вопреки воле человека, мы выбираем первое. Мы спрашиваем, а не считаем это само собой разумеющимся, и причину стоит назвать прямо: измерять приложение, храня на вашем устройстве идентификатор, можно было бы без вопроса лишь в том случае, если бы наш обработчик замеров письменно обязался никогда не использовать эти данные в своих целях и сделал невозможным просмотр отдельного человека в собственном инструменте. Мы его об этом не просили — поэтому спрашиваем вас.
Что мы делаем с замерами, стоит назвать, а не описывать отвлечённо: Whisprompt ведёт вас по тексту голосом на всех поддерживаемых языках, качество этого ведения от языка к языку разное, и единственный способ узнать, что на каком-то языке слежение работает плохо, — считать, сколько раз человеку пришлось взять текст в свои руки, в разрезе языка и на достаточном числе установок, чтобы число что-то значило. Замеры об экране подписки отвечают на вопрос поменьше: в какую именно закрытую функцию люди упираются. И в том и в другом случае замеры не несут ничего из написанного или сказанного вами, адрес, с которого они приходят, в местоположение не превращается, идентификатор заменяется через тринадцать месяцев, и ничто не объединяется с данными откуда-либо ещё и не используется для решений о вас.
Ничего из перечисленного здесь от вас не требуется. Ни один закон не обязывает вас это нам предоставлять, и ничто из того, что мы продаём, этим не обусловлено: приложение ставится, суфлёр работает, а подписка покупается и восстанавливается без аккаунта. От разрешения зависит одна функция — слежение за голосом без микрофона невозможно, — и отказ оставляет суфлёр на автопрокрутке: это самостоятельный режим, а не запасной. Замеры из раздела 6 и отчёты о сбоях из раздела 6a не нужны вообще ни для чего: откажите любому из них или обоим — приложение будет вести себя ровно так же. Последствия отказа наступают для нас, а не для вас: у нас просто не будет замера.
Решений о вас автоматизированными средствами мы не принимаем и профилей не строим. Ничто из описанного здесь вас не оценивает, ничего о вас не предсказывает и не относит вас к какой-либо группе; никаких юридических или сопоставимых с ними последствий для вас отсюда не наступает. Автоматически решаются две вещи, и обе — про технику, а не про вас: ретранслятор отклоняет запросы, приходящие слишком часто, и не добавляет седьмое устройство к подписке, которая уже покрывает шесть. Ни то ни другое ничего в вас не взвешивает: одно считает запросы, другое — устройства. Модель, которая первой читает ваши обращения (раздел 6b), их сортирует — о чём каждое и насколько срочным оно выглядит, — но ничего не решает о вас: всё, что от неё доходит до вас, решил кто-то из нас.
То, что вы отправляете нам сами, — сообщение с экрана отзывов или просьба добавить язык (и то и другое — в разделе 6b) или что угодно, посланное письмом, — держится на вашем согласии (ст. 6(1)(a)). Пока вы не отправили, не собрано ничего, а что уйдёт вместе с сообщением, решаете вы, пока пишете. Ответить вам, починить то, о чём вы сообщили, и учесть, какие языки у нас просят, — это и есть исполнение того же самого вашего действия.
10. Обработчики и передача за пределы ЕЭЗ
Каждый обработчик, названный здесь, связан с нами письменным соглашением об обработке данных: оно обязывает его защищать ваши данные по стандарту настоящей политики, обрабатывать их только по нашим указаниям и только для названной здесь цели и никогда — в собственных целях. Наши обработчики — RevenueCat (подписки), Cloudflare (ретранслятор, сообщения, которые вы отправляете с экрана отзывов, и вопросы, которые вы задаёте помощи ИИ), Amplitude (данные об использовании) и Sentry (отчёты о сбоях) — могут обрабатывать данные за пределами Европейской экономической зоны, в том числе в США. Amplitude принимает замеры на европейской точке приёма, а Sentry хранит отчёты о сбоях в европейском регионе, но обе компании американские, и эти передачи всё равно опираются на условия ниже. Каждая такая передача осуществляется на основании стандартных договорных условий ЕС, включённых в договор об обработке данных с каждым из этих обработчиков: дополнение Amplitude является частью его условий обслуживания и несёт в себе Условия 2021 года, а дополнение Sentry об обработке данных несёт те же Условия вместе с британским дополнением. Чтобы получить копию условий, на которых держится любая из этих передач, напишите на support@whisprompt.app и назовите обработчика, о котором спрашиваете, — мы пришлём относящиеся к нему условия. (Что у Amplitude есть помимо ваших замеров — это тестовые события, которые мы отправили сами, со своих устройств, чтобы проверить, что адрес, с которого приходит замер, не превращается в местоположение. Они наши, а не ваши, и мы их удаляем.) Соглашения и условия, о которых сказано выше, охватывают этих обработчиков и никого больше. Четыре сервиса, которые, как сказано в разделе 6b, читают, доставляют или хранят то, что вы отправляете с экрана отзывов, — Anthropic, Telegram, Google и GitHub — нашими обработчиками не являются: каждый из них находится за пределами Европейской экономической зоны или хранит полученное за её пределами, и каждый обращается с этим на своих собственных условиях. Ни у одного из наших обработчиков нет вашего имени, и лишь один из них может держать адрес почты: если вы указали его на экране отзывов, чтобы мы могли ответить, он лежит внутри вашего сообщения в Cloudflare до тех пор, пока это сообщение не удалят. Кроме этого у них есть случайный идентификатор подписки, идентификаторы устройств, идентификатор, который несут замеры, имя, которое каждое устройство сообщает о себе, и технические сведения о соединении. За их пределами этот адрес вместе с остальным сообщением читает модель у Anthropic, а если мы отвечаем вам письмом, он есть и в нашем ящике Gmail — сколько он там хранится, сказано в разделе 6b.
11. Ваши права
По GDPR у вас есть право на доступ, исправление, удаление, ограничение и переносимость данных, а также право на возражение. Ни имени, ни адреса почты мы на вас не заводим: аккаунтов в Whisprompt не существует, а адрес, который вы даёте нам вместе с сообщением, остаётся при этом сообщении (раздел 6b). Но одна запись на нашем сервере есть: если вы пользуетесь Whisprompt Pro на нескольких своих устройствах, мы храним их список — идентификатор, который приложение выдаёт каждому устройству, имя, которое устройство сообщает о себе, и даты добавления и последнего обращения — под случайным идентификатором подписки. Эту запись можно удалить из приложения в любой момент («Настройки» → «Данные на наших серверах»), а всё остальное остаётся на устройстве: тексты, модели и само приложение вы удаляете когда захотите. Чтобы отозвать согласие на замеры использования, выключите их («Настройки» → «Данные об использовании») или напишите нам — оба способа описаны в разделе 6, и любой из них останавливает сбор и удаляет идентификатор с устройства. Чтобы удалить и уже отправленные замеры, попросите нас — мы их удалим: они хранятся под этим одним случайным идентификатором и ни под каким вашим именем. Удаление записи о подписке до них не достаёт, а выключение замеров не достаёт до неё: они намеренно хранятся под разными идентификаторами. Попросите нас удалить то, что нужно, — или и то и другое. Если вы писали нам с экрана отзывов и хотите, чтобы это сообщение и всё приложенное к нему удалили, назовите номер обращения, который показало приложение: по нему мы находим и само сообщение, и его копии, описанные в разделе 6b, а никакого вашего имени, по которому его можно было бы найти, рядом с ним не записано. По любым запросам пишите на support@whisprompt.app. Вы также вправе подать жалобу в надзорный орган — по месту жительства, по месту работы или по месту, где, по-вашему, что-то пошло не так. Наш — испанский Agencia Española de Protección de Datos (aepd.es).
12. Сроки хранения
Локальные данные хранятся, пока вы их не удалите или не удалите приложение. Данные о подписке удаляются вместе с профилем клиента в RevenueCat, но обезличенные записи о транзакциях могут сохраняться у RevenueCat и в магазине приложений для целей отчётности. Комнаты ретранслятора живут не дольше четырёх часов, почтовый ящик подключения — до 30 дней, а список устройств вашей подписки — пока не пройдёт год без обращений от них, или пока вы не удалите его из приложения. На замерах использования не стоит даты: сколько они хранятся, решает то, ради чего они собраны. Они живут, пока ещё могут ответить на вопрос, ради которого сделаны, — работает ли та версия приложения, которой люди пользуются сейчас, так, как мы думаем, — и удаляются, когда отвечать на него перестают, либо раньше, если вы попросите удалить ваши. Ничего не хранится про запас. Идентификатор, под которым хранятся замеры, живёт по своим часам, и недолго: он заменяется не позже чем через тринадцать месяцев после создания — срок отсчитывается со дня создания и пользованием не продлевается, — так что запись под одним идентификатором не может охватить больше этого. Отчёты о сбоях хранятся в Sentry не дольше 90 дней. Сообщение, отправленное с экрана отзывов, вместе со всем приложенным хранится два года со дня поступления и затем удаляется автоматически — удаляет его та система, которая его хранит, каждую ночь, а не чья-то память; попросите — и ваше удалят раньше. До копий у Anthropic, Telegram, Google и GitHub, описанных в разделе 6b, это удаление не доходит: они остаются, пока мы не удалим их вручную, а удаляем мы их, когда вы об этом просите. Письма в поддержку храним лишь столько, сколько нужно для обработки запроса. Просьба добавить язык хранится два года со дня поступления и затем удаляется тем же ночным прогоном.
13. Дети
Whisprompt не предназначен для детей младше 16 лет и не обрабатывает их данные осознанно.
14. Изменения
Мы обновим эту страницу при изменении практик и поправим дату выше. Если срок изменения зависит от нас, страница обновляется до выпуска, который это изменение приносит, а не после.