- порядок беклога и роадмапа назначен слоями: проверки, которым можно верить → долги входа → владелец записи и контракт API → конвейер под тестами → приложение и возможности поверх; у каждого движения записана причина; - заведены восемь задач под пункты «Завершения», которых не закрывала ни одна запись, — цель any-audio-source была без задач вовсе; - у четырёх задач сняты критерии, требовавшие того, что делает задача ниже по очереди; исправлены ссылки на несуществующий repo/sqlite и на отменённую разведку об очереди.
2.9 KiB
2.9 KiB
🎯 Записи загружаются и читаются в приложении, которое ставится на телефон
- Тип: goal
- Секция: Запланировано — Экраны приложения нужны раньше настроек, удаления, уровней текста и статистики: всем им негде показаться.
- Зачем: Сегодня записи принимает только бот и голый HTTP API без интерфейса: отдать сервис человеку, у которого нет Telegram, нечем.
- Теги: decomposed
Приложение получает поверхность, на которой запись загружают и забирают текст, не открывая Telegram и не вызывая API руками. Ставится оно на телефон и открывается с ярлыка, как обычное приложение. Конвейер обработки при этом остаётся прежним — меняется вход и способ показать результат.
Приложение — основной вход сервиса, бот остаётся дополнением для голосовых сообщений. Экраны рисуются сначала под телефон, потом под широкий экран.
Границы взяты уже: запись звука в самом приложении и работа без сети за целью не стоят — файл выбирают в системном диалоге, а без сети приложение показывает, что связи нет.
Завершение
- Экран принимает файл и заводит задачу — ту же, что заводит бот.
- Состояние задачи видно на экране и обновляется само, пока задача не дошла до
doneилиfailed; отказ показывается человекочитаемым текстом. - Готовый текст читается и копируется с экрана целиком, без деления на части.
- Список своих записей открывается и листается.
- Приложение ставится на телефон из браузера и запускается с ярлыка на отдельном экране, без адресной строки.
- Открытое без сети, приложение показывает это состоянием, а не пустой страницей и не ошибкой браузера.
- Загруженная запись слушается на своём экране, а не скачивается файлом.