Автопостер для реддіт
Технічне завдання для розробки автопостера на сайті RedditI. Вступ1.1. Мета проекту:Розробка автопостера для сайту Reddit, який використовує Reddit API.II. Функціональні вимоги2.1. Параметри авторизації:Можливість зміни секрета, ідентифікатора клієнта та user agent.2.2. Автопостинг:Автоматична публікація повідомлень на задані сабреддіти.Встановлення діапазону затримки між публікаціями.2.3. Формати публікацій:Підтримка всіх типів постів, з усіма мітками та примітками.2.4. Використання флаєрів:Можливість вибору та використання флаєрів під час публікації. Вибір повинен відбуватися на етапі вибору сабреддітів.III. Додаткові функціональні вимоги3.1. Слова-тригери в заголовку:Функціонал для визначення слів і символів, обов'язкових для включення в заголовок поста для певних сабреддітів.Можливість вибору позиції слова-тригера в заголовку: на початку, в середині або в кінці.3.2. Управління пулом публікацій:Функція для створення пулу публікацій, щоб пости не виглядали як спам.Можливість вказувати максимальну кількість разів, коли кожна публікація може бути опублікована.IV. Управління сабреддітами4.1. Використання підписок користувача:Можливість використання сабреддітів, на які підписаний користувач.4.2. Завантаження сабреддітів з файлу:Функція для завантаження списку сабреддітів з текстового файлу.4.3. Управління пресетами сабреддітів :Можливість зберігати вибрані сабреддіти в пресети для зручного повторного використання.4.4. Пошук сабреддітів:Функція пошуку сабреддітів за назвою.V. Обробка помилок і виключень5.1. Обробка помилок:Коректна обробка помилок і виключень, включаючи ситуації, коли Reddit API недоступний або публікація в певний сабреддіт неможлива.VI. Безпека та авторизація6.1. Використання OAuth2:Використання методу OAuth2 для авторизації з метою забезпечення безпеки та конфіденційності даних користувача.VII. Моніторинг та управління процесом7.1. Прогрес-бар:Включення прогрес-бара для візуалізації процесу публікації.7.2. Логування:Функція для ведення та зберігання логів для відстеження історії дій і усунення проблем.7.3. Управління завданнями:Можливість ставити завдання на паузу, відновлювати його виконання або скасовувати.