Files
f7cloud_mobile/docs/app-map/talk.diff.md
T

120 lines
12 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Diff: Конференции (Talk) — итерация 1 (2026-07-13)
Ff_app: **38.2%** · Fd_app: **предварительно** (только сайдбар сверен live; дизайн-проход на устройстве — след. итерация) · n-a: 4
Сверка веб (карта `talk.md`, апстрим `spreed v22.0.12` + тема) ↔ натив (`feature/talk` Compose на
OCS /api/v4; звонки — `vendor/talk-android` v23). Метод mail/083: `[Ф|Д]`·`[open|done|n-a]`,
Ff/Fd на экран. Дизайн (Fd) сверяю на устройстве в след. проход — здесь Ф-функционал из кода; по
сайдбару, пройденному live (Browser 1/cloude, iframe 390px, read-only), внесены реальные подписи.
Натив-подписи ниже — из кода `TalkComponents.kt`/`TalkScreen.kt`/`TalkRoomInfoSheet.kt`.
## Экран 1: Список обсуждений — Ff 46.7% (8 open Ф / 15)
Всплывающее меню строки беседы (mail/087) — веб `Conversation actions` ↔ натив:
- [Ф][done] Поиск по списку · натив «Поиск» (`TalkComponents`).
- [Ф][open] Фильтр списка (Непрочитанные/Упоминания/Встречи) · натив есть «Непрочитанные»/«Фильтр»,
но без «Упоминания»/«Встречи» — частично.
- [Ф][done] «+» FAB создания · натив «Новый чат».
- [Ф][done] Открыть беседу (тап строки).
- [Ф][done] В избранное / Убрать из избранного · натив «В избранное»/«Убрать из избранного».
- [Ф][done] Пометить непрочитанным · натив «Пометить непрочитанным».
- [Ф][done] Уровень уведомлений (Все/@/Выкл) · натив в листе «О комнате» (Все/@/Выкл.).
- [Ф][open] **Отметить как прочитанное** (Mark as read) — в нативе нет отдельного действия.
- [Ф][open] **Архивировать / Разархивировать** (Archive) — нет.
- [Ф][open] **Покинуть обсуждение** (Leave conversation) — нет в меню списка.
- [Ф][open] **Удалить обсуждение** (Delete conversation) — `deleteMessage` есть, удаления комнаты из UI нет.
- [Ф][open] **Копировать ссылку** (Copy link) — нет.
- [Ф][open] **Скрыть текст сообщения** (Hide message text, приватность превью) — нет.
- [Ф][open] Метки **Важное / Чувствительное** (Important / Sensitive) — нет.
- [Ф][open] Пункты сайдбара: **Архивные / Треды / Ожидающие приглашения** — нет.
- [Д][—] Композиция строки (аватар/имя/превью/бейдж), зелёный FAB, поиск+фильтр — сверено live,
выглядит 1:1 (детальный Fd — на устройстве).
## Экран 2: Меню «+» (создание) — Ff 33.3% (4 open Ф / 6)
- [Ф][done] Создать обсуждение · натив «Новый чат» + «Создать группу» (личный/групповой/публичный).
- [Ф][done] Новая личная заметка · есть комната «Личные заметки».
- [Ф][open] **Начать встречу сейчас** (Start meeting now) — нет.
- [Ф][open] **Присоединиться к открытым обсуждениям** (Join open conversations) — нет.
- [Ф][open] **Проверить устройства** (Check devices / MediaSettings-превью) — нет (в нативе превью нет).
- [Ф][open] **Позвонить на телефонный номер** (Call a phone number) — нет.
- Мастер создания: [Ф][done] имя/тип/аватар; [Ф][open] описание, защита паролем, «Разрешить
гостям по ссылке» — в нативе минимальный (имя+тип). *(учтено в open выше как часть «создать».)*
## Экран 3: Беседа + композер + меню сообщения — Ff 38.1% (13 open Ф / 21)
Композер:
- [Ф][done] Отправить сообщение · «Отправить».
- [Ф][done] Эмодзи · «Смайлики».
- [Ф][done] Вложение/шаринг файла · «Вложение».
- [Ф][done] Голосовое сообщение · «Голосовое» + «Остановить запись».
- [Ф][open] **Умный подборщик** (Smart picker) — нет.
- [Ф][open] **Создать опрос** (Poll) — нет.
- [Ф][open] **Создать тред** (Create a thread) — нет (тредов в нативе нет).
- [Ф][open] **Тихая отправка** (Send without notification / silently) — нет.
Меню сообщения (mail/087) — веб `MessageButtonsBar` ↔ натив (`MessageActions`):
- [Ф][done] Ответить · «Ответить».
- [Ф][done] Изменить · «Изменить».
- [Ф][done] Удалить · «Удалить».
- [Ф][done] Реакция · набор эмодзи (реакции есть).
- [Ф][open] **Ответить лично** (Reply privately) — нет.
- [Ф][open] **Переслать сообщение** (Forward / в «Личные заметки») — нет.
- [Ф][open] **Копировать сообщение / ссылку** (Copy message / link) — нет.
- [Ф][open] **Напоминание** (Set reminder — сегодня/завтра/выходные/неделя/своё) — нет.
- [Ф][open] **Отметить как непрочитанное** (per-message) — нет.
- [Ф][open] **Перейти к файлу / к треду** (Go to file / thread) — нет.
- [Ф][open] **Перевести** (Translate) — нет.
- [Ф][open] **Скачать файл** (Download file из сообщения) — частично (вложения открываются, явного «скачать» нет).
- [Ф][open] Напоминания/реакции доп. эмодзи (React with another emoji) — ограниченный набор.
- [Д][—] Пузырь/автор/подложка чата — фон из макета (v0.5.114), детальный Fd — на устройстве.
## Экран 4: Активный звонок — Ff 91.7% (1 open Ф / 12; звонки НЕ инициировались)
Реализация — `vendor/talk-android` v23 `CallActivity` (нативный WebRTC), покрывает панель звонка
из кода апстрима: [Ф][done] микрофон, видео, размытие/вирт.фон, шаринг экрана, реакция, поднять
руку, добавить участников, запись, breakout, полный экран, покинуть/завершить.
- [Ф][open] **Скачать список присутствия** (Download attendance list) — проверить наличие в vendor UI.
- [Д][n-a] Нагрузочная сверка звонка — запрещена (HPB боевой, mail/073/085); не тестируем.
> Не-пройдено-live (звонки не инициирую). Отдельный трек — контрактная сверка v23 ↔ f7_talk
> 22.0.12-f7.N + гашение EOL-баннера (mail/071).
## Экран 5: Детали беседы (правый сайдбар) — Ff 42.9% (4 open Ф / 7)
Веб-табы ↔ натив лист «О комнате» (`TalkRoomInfoSheet`):
- [Ф][done] Детали (тип, уровень уведомлений).
- [Ф][done] Участники (список + «Добавить участника»).
- [Ф][done] Поиск по сообщениям.
- [Ф][open] **Общие ресурсы** (Shared items — файлы/медиа/ссылки беседы) — нет.
- [Ф][open] **Треды** (Threads) — нет.
- [Ф][open] **Комнаты обсуждения** (Breakout rooms) — нет.
- [Ф][open] **Богатые действия участника** (промоут/права/лобби/бан/телефон) — в нативе только список.
## Экран 6: Настройки обсуждения — Ff 11.1% (8 open Ф / 9; 2 n-a)
Веб `ConversationSettingsDialog` секции ↔ натив (нет выделенного экрана, частично лист «О комнате»):
- [Ф][done] Базовая информация (тип/уведомления — в листе).
- [Ф][open] Модерация, Права, Встреча, Комнаты обсуждения, Живая транскрипция, Опасная зона
(архив/удаление/покинуть), Обзор настройки, Личное — нет.
- [Ф][n-a] **Matterbridge**, **Боты** — серверно-администраторские, мобильно-неприменимо
(обоснование: конфигурируются в вебе/сервере `f7_talk`, не мобильный сценарий).
## Экран 7: Личные настройки Talk — Ff 0% (8 open Ф / 8; 1 n-a)
Веб `SettingsDialog` ↔ натив (выделенного экрана нет):
- [Ф][open] Внешний вид/звуки, Компактный список, Устройства/Проверить, Размытие по умолчанию,
Пропуск предпросмотра, Приватность (чтение/набор), Папка вложений, Настройки уведомлений — нет.
- [Ф][n-a] Горячие клавиши (Shortcuts) — мобильно-неприменимо.
---
## Сводка и приоритеты (прошу приоритизацию у лида)
Крупнейшие функциональные дыры (кандидаты P1–P5):
1. **Меню сообщения**: Переслать, Копировать, Напоминание, Ответить лично, Перейти к файлу/треду, Перевод.
2. **Меню беседы (список)**: Архив, Покинуть, Удалить, Копировать ссылку, Отметить прочитанным.
3. **Композер**: опрос, умный подборщик, тихая отправка, тред.
4. **Детали**: Общие ресурсы (Shared items), богатые действия участника.
5. **Треды** (сквозная фича, затрагивает список/беседу/детали) и **личные настройки Talk**.
Вопросы к лиду (b-dev-mobile):
- Порядок P1–P5? Треды — целиком мой модуль или нужна навигация/core?
- «Начать встречу сейчас» и «Предстоящие встречи» тянут интеграцию с Календарём (CalDAV) —
кросс-модуль с b-mob-calendar? Веду я или согласуем общий вход?
- Экран 4 (звонок): подтвердить, что панель vendor v23 считаем `done` без live-нагрузки, и
выделить «список присутствия» как единственный open.
- Fd (дизайн): гоню отдельным проходом на устройстве после ревью-сборки — версию/сборку по гейту (084) за тобой.
**Живая write-сверка `bmob-*`** (mail/085): у меня write на forbion пока НЕ выполняю — по
CONVENTIONS §1 правки боевого хоста требуют явного разрешения владельца в рабочем чате роли;
запрошу подтверждение. Функциональные дыры выше выявлены из кода, live-запись для их фиксации не нужна.