Техническое задание: Автоматизация публикации квизов из Telegram в WordPress
Необходимо разработать надежное и автоматизированное решение для синхронизации контента. Система должна позволять создавать опросы (квизы) в Telegram-канале и автоматически публиковать их на сайте под управлением WordPress, используя REST API.
Архитектура решения
Предполагается реализация по следующей схеме:
- Telegram Бот → Промежуточный сервер/Скрипт → REST API WordPress
Основные этапы работ
1. Настройка Telegram-бота
- Создание бота через официального BotFather.
- Настройка бота на прослушивание сообщений и опросов в указанном канале или чате.
2. Разработка промежуточного скрипта (серверной логики)
- Написание скрипта на Python, Node.js или PHP.
- Функционал скрипта:
- Получение данных от Telegram-бота (вопрос, варианты ответов, правильный ответ, медиафайлы).
- Формирование и отправка структурированного запроса к API WordPress.
- Обработка авторизации (через JWT или Application Passwords).
3. Интеграция с WordPress
- Настройка WordPress для приема данных:
- Создание пользовательского типа записей (Custom Post Type) "Quiz" для квизов, например, с помощью плагина.
- Организация таксономий для вопросов и ответов.
- Обеспечение возможности создания и обновления записей через REST API.
- Реализация загрузки медиафайлов (изображений из опросов) через API WordPress.
Упрощенный рабочий процесс
- Администратор публикует новый опрос в Telegram-канале.
- Бот, являющийся администратором канала, перехватывает этот опрос.
- Бот отправляет данные на веб-хук (URL вашего скрипта).
- Скрипт аутентифицируется в WordPress и создает новую запись типа "Quiz" через API, используя полученные данные.
Ключевые требования
- Система должна работать автоматически, без ручного вмешательства после публикации опроса в Telegram.
- Необходима надежная обработка ошибок и логирование.
- Решение должно быть безопасным (без хардкода ключей, с безопасными методами аутентификации).
- Важно предусмотреть обработку как текстовых данных, так и медиафайлов.