Audio Scribe TMA: workspace для транскрибации, файлов и рабочих данных
Audio Scribe TMA — frontend-часть платформы Audio Scribe: Telegram Mini App и web workspace на React/Vite. Если бот удобен для быстрых действий из чата, то TMA закрывает сценарии, где нужно загрузить большой файл, выбрать параметры транскрибации, посмотреть историю, разложить результаты по заметкам, задачам, календарю и напоминаниям.
Что решает TMA
Я делал TMA как рабочий интерфейс вокруг тех же backend-возможностей, которые доступны боту, но с более удобным управлением данными. Основные задачи:
- загрузить аудио или видео через UI, а не через ограничения Telegram-чата;
- настроить параметры транскрибации перед обработкой;
- отслеживать статус больших файлов через polling;
- работать с файлами, заметками, задачами, календарём и напоминаниями в одном workspace;
- дать администраторам отдельный dashboard для мониторинга, настроек и контроля системы.
Для больших файлов frontend использует отдельный endpoint транскрибации и polling статуса обработки. Это делает web-интерфейс более подходящим для записей встреч, длинных лекций, интервью и видеофайлов, которые неудобно отправлять напрямую в Telegram.
Вход и авторизация
TMA поддерживает два сценария входа:
- Telegram Mini App — при запуске внутри Telegram используется initData;
- web-flow — для обычного web-доступа применяется JWT.
В логике frontend Telegram initData имеет приоритет над JWT. Это важно для Mini App-сценария: пользователь может открыть workspace из Telegram и продолжить работу с тем же аккаунтом и балансом, не проходя отдельный ручной вход.
Как работает транскрибация через UI
В разделе /workspace/transcribe пользователь загружает аудио или видео и выбирает параметры обработки.
Настройки транскрибации:
- язык;
- пунктуация и регистр;
- speaker labels;
- profanity filter;
- entity detection;
- redact PII.
После отправки frontend запускает обработку и опрашивает backend о статусе. Такой flow лучше подходит для больших файлов: пользователь видит отдельный экран, может работать с параметрами и не зависит от формата Telegram-сообщения.
Workspace-разделы
TMA организован вокруг нескольких рабочих маршрутов:
/workspace— общий вход в рабочую область;/workspace/transcribe— загрузка и транскрибация файлов;/workspace/files— работа с файлами и результатами обработки;/workspace/notes— заметки и база рабочих материалов;/workspace/reminders— напоминания и управление уведомлениями;/workspace/settings— настройки пользователя и интерфейса;- Tasks & Calendar — задачи, проекты и календарные связи.
Files и результаты анализа
Файлы и результаты транскрибации доступны не только как сообщение в Telegram, но и как сохранённые сущности. Это нужно для повторного обращения к материалу: открыть расшифровку, вернуться к summary, найти цитаты или использовать результат как основу для заметки.
После транскрипта платформа хранит связанные блоки анализа: summary, thoughts, quotes, notes и key takeaways. В UI это превращается в рабочую карточку материала, а не в одноразовый ответ.
Notes
Раздел заметок закрывает ручную и полуавтоматическую работу с материалами. В нём есть:
- ручные заметки;
- теги;
- закрепление;
- архив;
- вложения;
- ссылки;
- привязка к задачам и проектам.
Это полезно для базы знаний из интервью, созвонов, подкастов и видео: транскрипт можно сохранить, разметить и связать с дальнейшими действиями.
Reminders
Напоминания доступны и в web UI, и через Telegram inline controls. В TMA удобнее просматривать и редактировать их списком, а в Telegram — быстро реагировать на уведомления.
Поддержанные сценарии:
- отложить напоминание;
- pause / resume / cancel;
- recurring reminders;
- категории;
- ntfy settings.
Tasks & Calendar
Отдельный слой workspace — задачи и календарь. Он нужен, чтобы результаты встреч и заметок не оставались только текстом.
В интерфейсе поддерживаются:
- доска задач;
- список;
- календарь;
- проекты;
- подзадачи;
- bulk operations;
- связи задач с календарными событиями.
Практический сценарий: после расшифровки созвона сохранить ключевые пункты в заметку, выделить follow-up как задачи, связать их с проектом и поставить напоминания по срокам.
Admin dashboard
Кроме пользовательского workspace, frontend содержит admin dashboard. Он покрывает разделы:
- overview;
- transcribe;
- tasks;
- reminders;
- users;
- settings;
- servers;
- audit;
- agent;
- memory.
Для контроля системы есть system monitor и feature flags. Это не маркетинговый «центр управления всем», а практический административный слой: посмотреть состояние, проверить настройки, отследить отдельные операции и управлять доступными возможностями.
Чем TMA полезнее бота
Бот удобен для быстрых входящих действий: переслать голосовое, отправить ссылку, получить ответ в чате. TMA полезнее в других случаях:
- Большие файлы — загрузка через UI и обработка через отдельный endpoint с polling статуса;
- Параметры обработки — можно явно выбрать язык, speaker labels, фильтры и redact PII;
- Навигация по данным — файлы, заметки, задачи и напоминания доступны как разделы workspace;
- Рабочий контекст — результаты можно связывать с проектами, задачами, календарём и заметками;
- Администрирование — dashboard даёт мониторинг, настройки и feature flags.
Инженерные решения
Во frontend я использовал React/Vite и разделил пользовательский workspace, TMA-вход и admin dashboard. На уровне интеграции с backend важны несколько решений:
- приоритет Telegram initData над JWT для Mini App-сценария;
- отдельный flow для больших транскрибаций через backend endpoint;
- polling статуса обработки вместо ожидания длинного blocking-запроса;
- единый доступ к файлам, анализам, заметкам, задачам и напоминаниям;
- UI для параметров транскрибации, которые влияют на backend-обработку.
TMA дополняет бота: Telegram остаётся быстрым каналом ввода и уведомлений, а workspace становится местом для управления материалами после обработки.
Бизнес-сценарии
Обработка созвонов
Команда загружает запись встречи, получает транскрипт и summary, затем переносит выводы в заметки и задачи. Это снижает ручную работу по подготовке протокола и помогает не потерять договорённости.
Разбор интервью клиентов
Интервью можно хранить как файл с транскриптом, выделять цитаты, тегировать заметки и связывать наблюдения с проектом. Такой flow удобнее в workspace, чем в одном Telegram-чате.
База знаний из видео и аудио
YouTube/Vimeo-ссылки, подкасты, лекции и внутренние записи можно превращать в текстовые материалы, сохранять в файлы и заметки, а затем использовать как базу для поиска и последующих вопросов.
Операционные напоминания
Напоминания помогают закрывать follow-up после встреч, регулярные проверки и повторяющиеся действия. Telegram удобен для реакции на уведомление, TMA — для просмотра и настройки списка.
Контроль расхода обработки
Баланс в секундах и генерациях помогает разделить стоимость транскрибации и AI-ответов. Это полезно для сценариев, где важно понимать, на что расходуется обработка: длинные файлы, частые вопросы или повторные генерации.
Это описание frontend/TMA-части проекта Audio Scribe: без заявлений о точности, SLA или production-нагрузке, только реализованные пользовательские и инженерные сценарии.