- Разобраться с лимитами телеграмма.
- Если локальный конфигурационный файл содержит в себе версию приложения совпадающую с файлом из удалённого репозитория AND локальный файл содержит в себе не совпадающую версию базы данных из удалённого репозитория, то только в этом случае нужно удалить таблицу опций пользователя и продолжить выполнение кода (пересоздать таблицу опций с новыми параметрами).
- Если имя пользователя не установлено, нужно предложить установить случайный или попросить самому установить в официальном приложении. Перед тем как начать выполнять задачи, нужно проверить на двустороннее существование имён пользователей для корректного нахождения сущностей аккаунтов.
- Скрыто устанавливать имя пользователя (временное решение).
- В release.py добавить увелечение версии базы данных, если были произведены изменения функционала.
- Правильная индикация прогресса при выполнении задачи.
- Переписать синхронизацию избранных сообщений включая следующие механизмы:
- Пересылать за раз 100 сообщений (максимальное кол-во допустимое тг)
- Сохранять список закреплённых сообщений.
- Сохранять последовательность
- Сохранять последовательность отвеченных сообщений в этом же чате.
- Подумать над коллизеей сообщений, убедиться что группированные сообщения входят допустимое значение =< 100. Максимальное количество группированных сообщений = 10, значит надо тут ещё подумать...
- Исправить локализацию приложения. Корректно работает только на Linux.
- Паралелльное выполнение задач в момент работы программы. Не стоит терять драгоценное время на ожидания.
- В .yml повысить версию питона до 3.12.
- Добавить кнопку для переключения языка.
- Добавить кнопку отмены при выполнении задач.
- Игнорировать повторное нажатие кнопки Start, если она уже была нажата.
- Start Button должно быть отдельным классом.
- Если пользователь авторизовал существующий аккаунт, нужно автоматически разлогинить эту сессию и удалить данные из db.
- Добавить стиль для отображения предупреждений о неполноте синхронизации (потеря данных и т.д).
- Не вступать в те каналы, которые уже есть у получателя.
- Придумать, как можно было бы сохранять выполненый прогресс.
- Переписать части алгоритмов. Ты сам помнишь какие, мне лень сюда переписывать :D
- Найти решение отказаться от использования нахождения сущностей строго по username. Механизмы телеграмма не позволяют писать человеку по его ID, если access_hash не содержит информацию об этом чате. То есть, если общение между двумя собеседниками не было и чат между ними не существует, то отправить сообщение указывая ID аккаунта не получится.
- При попытке авторизовать уже существующий аккаунт в программе, это нужно обработать. SQL алгоритм уже готов, нужно допилить только GUI.
- Добавить авторизацию по номеру телефона.
- Отображать пользовательский аватар вместо иконки.
- Проверять актуальность данных пользователя при запуске программы (если пользователь авторизовался в программе).
- Создать скрипт для частичной автолокализации.
- Добавить плавные анимации на кнопку "начать" и исправить скорость вращения иконки для Windows.
- Poetry instead pip
- Прикрутить логгирование.
- Уведомление о новом обновлении должно быть отдельным классом, а не в utils.
- Dividers в секции о приложении.
- Слева от кнопки start добавить приблизительное время выполнения всех задач.
- Добавить changelog.txt в репозиторий.
- Дописать синхронизацию публичной аватарки.
- Синхронизация имени, фамилии и описания.
- Синхронизация избранных сообщений. 50/50
- Синхронизация пользовательских фото и видео аватаров.
- Синхронизация публичных каналов и групп.
- Синхронизация настроек конфиденциальности.
- Синхронизация настроек безопасности.
- Синхронизация наборов эмоджи, стикеров и gif. Также архивированных паков.
- Синхронизация списка ботов.
- Синхронизация заблокированных пользователей и ботов.
- Синхронизация обоев для чатов.
- Синхронизация папок (стоит объединить с синх. публичных каналов и групп.)
- Синхронизация контактов.
- Синхронизация архива историй.
- Синхронизация каналов, групп и ботов которыми пользователь владеет.
- HARD Синхронизация закрытых каналов и групп (с автоматическим поиском/парсером ссылок приглашения).