Commit Graph

93 Commits

Author SHA1 Message Date
zavolo
24b0123185 fix(chat history): фикс 2026-05-11 00:38:04 +03:00
zavolo
31844c7fa2 fix(chat history): фикс 2026-05-11 00:26:31 +03:00
zavolo
9b60b15538 fix(chat history): фикс 2026-05-11 00:11:24 +03:00
zavolo
0d91f6542e fix(chat history): фикс 2026-05-10 23:39:08 +03:00
zavolo
77d6ca8cc0 fix(chat history): фикс 2026-05-10 23:27:13 +03:00
zavolo
3bf8bc5770 fix(chat history): фикс 2026-05-10 23:21:07 +03:00
zavolo
861b75eb1c MAX: bootstrap-история в LOGIN — клиент перестал думать что всё уже синканулось
В ответе LOGIN сервер слал messages: {} и chatMarker: 0. Десктопный
клиент в этом случае считает, что локальная история уже синхронизирована
со старого запуска, и НЕ отправляет CHAT_HISTORY (49) при открытии чата.
В окне видно только lastMessage из chats[], а вся реальная переписка —
ничерта.

- src/common/tools.py: collect_bootstrap_history(chatIds, ...) —
  собирает карту {chatId: [последние N сообщений]}, в т.ч. избранное
  под клиентским id = senderId ^ senderId.
- src/oneme/processors/auth.py: подсовываем эту карту в
  payload.messages, chatMarker = текущее время вместо 0.
2026-05-10 22:27:42 +03:00
zavolo
fa0ed34adc MAX: история таки заработала — cid/link/reactionInfo обязательны в схеме
Десктопный MAX подключается через TCP (mobile-протокол) и парсит
msgpack по фиксированной схеме. Если в сообщении выпадает любое из
полей — клиент молча обрывает соединение. После 87cfc19 как раз
такие условные `if elements: ...` / `if link: ...` (а link и
reaction_info там всегда были `{}`, то есть falsy) вырезали поля
из ответа CHAT_HISTORY и MSG_SEND, чем и сломали историю.

- src/common/tools.py: новый build_message_dict() — единая сборка
  тела сообщения, где все поля (id, cid, time, type, sender, text,
  attaches, elements, reactionInfo, link) присутствуют ВСЕГДА.
  get_last_message переписан через него.
- src/oneme/processors/history.py: chat_history использует
  build_message_dict вместо ручной логики с условными if-ками.
- src/oneme/processors/messages.py: msg_send.bodyMessage теперь
  отдает cid / reactionInfo / link даже пустыми и приводит id
  к int для mobile, str для web.

Цепная польза: auth.py LOGIN bootstrap (через generate_chats →
get_last_message) и search.py тоже теперь шлют корректную схему.
2026-05-10 22:17:18 +03:00
Alexey Polyakov
87cfc1932e Попытка починить историю (спойлер, нихуя не получилось) 2026-05-10 19:04:51 +03:00
Alexey Polyakov
17245f44d0 Фикс сборки избранного 2026-05-09 18:55:49 +03:00
Alexey Polyakov
d81eec5532 Генерируем айди пользователей рандомно (опять, да) 2026-05-09 18:16:32 +03:00
Alexey Polyakov
ddb810589f MAX: исправление уязвимости с избранными 2026-05-09 17:55:39 +03:00
Alexey Polyakov
dff6937da8 MAX: добавление контакта по номеру телефона 2026-05-09 15:50:47 +03:00
Alexey Polyakov
ac40cc53c9 MAX && TT: обновление контакта 2026-05-08 16:15:33 +03:00
Alexey Polyakov
756956d8a0 TT: тоже самое что в макс 2026-05-08 16:04:03 +03:00
Alexey Polyakov
00071c80be oops 2026-05-08 15:58:29 +03:00
Alexey Polyakov
a045457128 MAX: блокировка и разблокировка контакта 2026-05-08 15:57:24 +03:00
Alexey Polyakov
4d51c70f8e Вынес sqlite в отдельный модуль 2026-05-08 15:27:05 +03:00
Alexey Polyakov
2d3b9285bf MAX: теперь для избранного не сравниваем айди с нулём 2026-05-08 15:24:49 +03:00
Alexey Polyakov
6bb0d52419 nothing 2026-05-06 21:27:01 +03:00
Alexey Polyakov
911008c0a1 oops 2026-05-06 20:46:22 +03:00
Alexey Polyakov
b8472821eb MAX: web fix 2 2026-05-06 20:42:33 +03:00
Alexey Polyakov
f1c1639d9f MAX: web fix 2026-05-06 20:33:09 +03:00
Alexey Polyakov
7426e83914 nothing 2026-05-06 19:34:14 +03:00
Alexey Polyakov
8dc3ef1731 MAX: Почистил серверный конфиг 2026-05-06 17:40:11 +03:00
Alexey Polyakov
f1ff4fd062 MAX && TT: общение в таме, и корректировки под веб морду 2026-05-06 15:58:27 +03:00
Alexey Polyakov
0b6eda6178 TG Bot: fix username 2026-05-06 15:53:14 +03:00
Alexey Polyakov
02df98cdbd TG Bot: fix 2026-05-06 15:43:30 +03:00
Alexey Polyakov
49d73200b0 fix 2026-05-06 15:39:22 +03:00
Alexey Polyakov
389a08ebce nothing 2026-05-06 15:35:23 +03:00
Alexey Polyakov
613e1b96cd Решение проблемы обработки sigterm 2026-05-06 15:25:07 +03:00
Alexey Polyakov
0f2d946b98 TG Bot: возможность включения белого списка 2026-05-06 00:51:56 +03:00
Alexey Polyakov
1ff974dfce oops 2026-05-05 23:08:02 +03:00
Alexey Polyakov
bcd94b3a57 TT: ну вроде шире поддержка, а вообще обратная совместимость с максом клас 2026-05-05 23:06:50 +03:00
Alexey Polyakov
89f1fefa31 MAX & TT: теперь в качестве страны локации используется настоящая страна пользователя, а также зафиксировал версии библиотек в зависимостях 2026-04-28 18:22:16 +03:00
Alexey Polyakov
c716520ca4 MAX: добавление/удаление контактов, статусы 2026-04-28 06:56:29 +03:00
Alexey Polyakov
ff46e417f4 MAX: oops 2026-04-27 17:41:51 +03:00
Alexey Polyakov
bd95755db4 MAX: создание папок 2026-04-27 17:40:28 +03:00
Alexey Polyakov
cb058f6ab6 Теперь ID пользователей идут по порядку, как и раньше 2026-04-25 12:10:44 +03:00
Alexey Polyakov
cd9ba981ae MAX: отдача черного списка 2026-04-24 23:31:55 +03:00
Alexey Polyakov
810d480dbd MAX: фикс версий < 25.8.0 2026-04-24 21:30:02 +03:00
Alexey Polyakov
227f90c3c3 MAX: Рефактор папок 2026-04-24 20:54:28 +03:00
Alexey Polyakov
56133416e3 MAX: пуши через firebase (особо не тестил, вроде работает) 2026-04-24 19:46:08 +03:00
Alexey Polyakov
35a4101608 MAX: обновление настроек приватности 2026-04-24 17:17:33 +03:00
Alexey Polyakov
9fcba1af86 MAX: Рабочие баннеры 2026-04-24 15:51:01 +03:00
Alexey Polyakov
4abe6de885 oops 2026-04-20 22:25:38 +03:00
Alexey Polyakov
4121bd0e1d MAX: заглушка для баннеров, правка пакета со списком жалоб, отдача контактов и прочие улучшения 2026-04-20 22:22:02 +03:00
Aleksandr Kosachev
d9798a6fc6 Fix OpenMAX mobile compatibility and Telegram auth fallback (#30)
* Fix OpenMAX mobile compatibility and Telegram auth fallback

* Common: Убрал скобку в конфиге

---------

Co-authored-by: Alexey Polyakov <starwear3000@mail.ru>
2026-04-14 20:05:34 +03:00
Alexey Polyakov
d9cbafc4e3 TT: фикс вебсокета 2026-04-12 07:15:09 +03:00
Alexey Polyakov
dcbcb0a600 Common: добавил сжатие lz4 2026-04-10 17:43:35 +03:00