Budget: 25000 UAH Deadline: 20 days
Hello.
I am developing bots for Telegram on NodeJS. I am ready to take it on. Write to me, we will discuss.
1. Общие сведения
- Цель разработки: Создание Python-скрипта для автоматизации задач, связанных с управлением Telegram-ботом, выполнением SEO оптимизации, взаимодействием с OpenCart API, и предоставлением REST API на базе Flask.
- Среда выполнения: Сервер Ubuntu 20.04.
- Используемые технологии: Python, Flask, Gunicorn, aiogram, OpenAI API, OpenCart API, SQL, PHP.
2. Описание функциональных модулей
2.1 Telegram-бот
Файлы: `bot.py`, `app.py`
- Основные задачи:
- Инициализация и конфигурация:
- Бот загружает конфигурационные параметры из файла `config.py`, включая параметры подключения к Telegram API, базу данных, и ключи API для внешних сервисов.
- Используется библиотека `aiogram` для асинхронного взаимодействия с Telegram API, что позволяет боту эффективно обрабатывать несколько запросов одновременно.
- Обработка команд:
- Поддержка команд:
- `/start`: Отправка приветственного сообщения и инструкций по использованию бота.
- `/help`: Предоставление списка всех доступных команд с кратким описанием их функциональности.
- `/update_seo`: Запуск процесса обновления SEO данных для продуктов или категорий в OpenCart.
- Бот предлагает команды для выбора всех товаров или категорий для обновления.
- Пользователь может выбрать один из двух режимов обновления:
1. Массовое обновление — обновление SEO данных для всех выбранных продуктов или категорий.
2. Обновление по URL — обновление SEO данных для конкретного продукта или категории, указанных по URL.
- В обоих случаях данные загружаются из XML ссылки и проверяются через базу данных, чтобы определить, были ли они обработаны ранее.
- Предусмотрена настройка для учета или игнорирования истории обработки (например, обработанные данные могут быть обновлены или пропущены в зависимости от настройки).
- Введенные пользователем данные (например, URL или параметры для массового обновления) должны быть предварительно проверены (валидированы) перед началом обработки.
- `/get_product_info [ID]`: Запрос информации о продукте по его уникальному идентификатору из OpenCart.
- Логика обработки команды `/update_seo`:
1. Пользователь выбирает, обновлять все товары или категории.
2. Скрипт предлагает пользователю выбрать режим обновления: массовое обновление или обновление по URL.
3. В случае массового обновления, скрипт загружает данные из XML ссылки и проверяет их в базе данных.
4. В случае обновления по URL, введенный URL проверяется на корректность и соответствие нужным параметрам.
5. Данные проверяются на наличие в базе данных, чтобы определить, были ли они обработаны ранее.
6. В зависимости от настройки (учитывать историю обработки или нет), данные либо обновляются, либо пропускаются.
7. Результаты обновления сохраняются в базе данных, и пользователь уведомляется о завершении процесса.
- Взаимодействие с внешними сервисами:
- OpenAI API:
- Генерация текстов, таких как SEO-описания продуктов, на основе данных, предоставленных пользователем или полученных из базы данных.
- Формирование запроса к API с необходимым промптом (например, описание продукта) и обработка полученного ответа для дальнейшего использования в других модулях скрипта.
- OpenCart API:
- Получение данных о продуктах, таких как название, описание, цена, количество на складе и других характеристик, по запросу пользователя.
- Обновление информации о продуктах на основе данных, предоставленных пользователем или сгенерированных с помощью других модулей (например, генератором SEO).
2.2 Веб-приложение на Flask
Файлы: `app.py`, `wsgi.py`, `gunicorn_conf.py`
- Основные задачи:
- Инициализация и настройка:
- Веб-приложение инициализируется с использованием Flask и настроено на работу с Gunicorn для обеспечения многопоточности и масштабируемости.
- Настройка конфигурационных файлов, таких как `gunicorn_conf.py`, для оптимизации производительности и управления ресурсами сервера.
- Маршрутизация:
- Приложение поддерживает несколько маршрутов для обработки HTTP-запросов, например:
- `/api/product/<product_id>`: Получение информации о продукте по его ID.
- `/api/update_seo`: Запуск процесса обновления SEO данных для всех продуктов.
- Каждый маршрут корректно обрабатывает запросы, проверяя параметры и выполняя необходимые действия, такие как взаимодействие с базой данных или вызов внешних API.
- Обработка данных:
- Веб-приложение интегрируется с базой данных через `db_manager.py` для выполнения операций чтения, записи, обновления и удаления данных.
- Обработка данных включает валидацию входных данных и применение бизнес-логики перед выполнением операций.
- Возврат ответов:
- Приложение формирует и возвращает ответы в формате JSON, включая информацию о статусе выполнения запроса, данные о продуктах, результаты обновления SEO данных и другие релевантные данные.
- В случае ошибок или некорректных данных, приложение возвращает подробные сообщения об ошибках с указанием причин и возможных решений.
2.3 Работа с базой данных
Файлы: `db_manager.py`
- Основные задачи:
- Управление базой данных:
- Скрипт обеспечивает создание, чтение, обновление и удаление (CRUD) данных о продуктах, пользователях, SEO параметрах и других связанных сущностях.
- Реализация взаимодействия с базой данных через ORM (если используется) или прямые SQL-запросы для повышения производительности.
- Оптимизация запросов:
- SQL-запросы оптимизированы для минимизации нагрузки на базу данных и быстрого выполнения.
- Предусмотрена индексация полей, часто используемых в запросах, для повышения скорости выборки данных.
- Интеграция с другими модулями:
- Работа с базой данных интегрирована с модулями Telegram-бота и веб-приложения, чтобы обеспечить синхронизацию данных между различными компонентами системы.
- Модули взаимодействуют с базой данных через API или напрямую для выполнения необходимых операций, таких как обновление данных о продуктах или сохранение сгенерированных SEO описаний.
2.4 SEO генератор
Файлы: `seo_generator.py`, `update_seo.php`
- Основные задачи:
- Генерация SEO данных:
- Использование OpenAI API для генерации SEO-описаний, мета-тегов и других элементов SEO на основе данных о продуктах.
- Генерация многоязычных описаний для поддержки мультинациональных магазинов, если это требуется.
- Сценарии генерации учитывают уникальные особенности продуктов, такие как их категория, целевая аудитория и конкурентное окружение.
- Анализ и обновление данных:
- Парсинг существующего контента на страницах для выявления id товара или категории в теге <body>.
- Модуль обновляет существующие SEO данные в базе данных на основе анализа и сгенерированных описаний.
- После обновления данных в базе, скрипт автоматически отправляет обновленные SEO данные в OpenCart через соответствующий API.
- Интеграция с OpenCart API:
- Скрипт обеспечивает тесную интеграцию с OpenCart для автоматического обновления SEO данных продуктов через API.
- Модуль поддерживает как автоматические, так и ручные запуски обновления SEO данных через интерфейсы Telegram-бота, веб-приложения Flask или скрипта `update_seo.php`.
2.5 Интеграция с OpenCart API
Файлы: `opencart_api.py`
- Основные задачи:
- Получение данных о продуктах:
- Модуль обеспечивает получение информации о продуктах из OpenCart API по уникальному идентификатору (ID) или другим параметрам.
- Полученные данные включают все необходимые атрибуты продукта, такие как название, описание, цена, наличие на складе, категория и другие.
- Модуль интегрирован с другими компонентами системы, такими как SEO генератор и Telegram-бот, для предоставления пользователям актуальной информации.
- Обновление данных:
- Модуль поддерживает обновление данных о продуктах в OpenCart через API, включая изменение цен, описание, количества на складе и других параметров.
- Для обновления данных используются методы POST или PUT, с обязательной проверкой успешности выполнения операции.
- Авторизация и безопасность:
- Все взаимодействия с OpenCart API защищены с использованием токенов авторизации и других мер безопасности для предотвращения несанкционированного доступа.
- Модуль поддерживает обновление и управление токенами API, включая их автоматическое обновление по мере необходимости.
- Отправка уведомлений:
- Модуль отправляет уведомления пользователям (например, через Telegram-бота) о результатах выполнения операций с продуктами, таких как успешное обновление данных или возникновение ошибок.
3. Дополнительные модули
3.1 Логирование
Файлы: `requirements_logging.py`
- Основные задачи:
- Логирование операций:
- Все значимые события в системе логируются, включая ошибки, взаимодействия с внешними API, изменения в базе данных и другие критические операции.
- Логи включают информацию о времени события, источнике (например, модуль, вызвавший событие), статусе операции и подробности выполнения.
- Настройка логирования:
- Логирование поддерживает разные уровни детализации (debug, info, error) в зависимости от текущей среды (разработка, тестирование, продакшн).
- Логи хранятся в определенном формате и месте (например, на локальном сервере или в облачном хранилище), с возможностью дальнейшего анализа и мониторинга.
3.2 Валидация данных
Файлы: `validators.py`
- Основные задачи:
- Валидация входных данных:
- Модуль реализует функции для валидации всех данных, поступающих от пользователей Telegram-бота, через веб-приложение или из внешних API.
- Валидация включает проверку формата данных (например, числовые ID, текстовые поля), допустимых значений, наличия обязательных полей и других параметров.
- Модуль интегрирован с другими компонентами системы для обеспечения корректности данных на всех этапах обработки.
- Обработка ошибок валидации:
- В случае некорректных данных, модуль возвращает соответствующие сообщения об ошибках пользователям или клиентам API, с указанием причин ошибки и рекомендаций по исправлению.
4. Скрипт для обновления SEO данных
Файлы: `update_seo.php`
- Основные задачи:
- Запуск процесса обновления:
- PHP скрипт запускает процесс обновления SEO данных для всех продуктов в базе данных.
- Скрипт интегрирован с другими модулями системы, такими как `seo_generator.py`, для выполнения обновления на основании сгенерированных данных.
- Интеграция с базой данных и OpenCart:
- Скрипт взаимодействует с базой данных для получения текущих данных о продуктах и сохранения новых SEO параметров.
- Обновленные данные автоматически передаются в OpenCart через API для обновления страниц продуктов.
- Автоматизация процесса:
- Скрипт поддерживает возможность автоматического запуска по расписанию (например, с использованием cron задач), чтобы обеспечить регулярное обновление SEO данных.
- В случае ошибок или сбоев, скрипт логирует соответствующую информацию для последующего анализа и устранения.
Budget: 25000 UAH Deadline: 20 days
Hello.
I am developing bots for Telegram on NodeJS. I am ready to take it on. Write to me, we will discuss.
Budget: 20000 UAH Deadline: 1 day
Good afternoon!
I am ready to help you with the implementation of a project to create a Python script for automating the management of a Telegram bot, SEO optimization, interaction with the OpenCart API, and providing a REST API based on Flask. I look forward to the opportunity to clarify all the details and start working on it!
Budget: 16000 UAH Deadline: 1 day
Hello,
I am ready to take on your project to create a Python script for automating the management of a Telegram bot, SEO optimization, working with the OpenCart API, and providing a REST API based on Flask. My experience includes using Python, Flask, Gunicorn, aiogram, OpenAI API, OpenCart API, SQL, and PHP. I can effectively handle tasks related to bot initialization, processing various commands, interacting with external services, generating SEO data, creating a web application on Flask, working with databases, logging, and data validation.
My rate: $16 per hour. For a more detailed discussion of the requirements and scope of the project, I would be happy to hear additional information.
Best regards,
Maxim
Budget: 27000 UAH Deadline: 33 days
Good day!
I am ready to create a Telegram bot for you that will meet all your requirements!
I have experience in creating similar projects.
I hold 2nd place on the platform for Python.
I would be happy to collaborate!
Budget: 10000 UAH Deadline: 7 days
Cool project brief written by gpt, ready to take on the project, but the condition is complete freedom of action.
Budget: 27000 UAH Deadline: 20 days
Hello!
I have over 3 years of full-stack development experience and bot development (including user bots), my main stack is React + NodeJs/Express Js/NestJs, Python. I also have experience with CI/CD including Docker/Docker-Compose and Nginx. I complement everything with work on well-known SQL/NoSQL databases.
I am ready for fruitful collaboration, write to me and we will discuss all the details.
ТЗ у якому є деталі реалізації імена файлів та інші такі речі - погане ТЗ.
Я понимаю ваше стремление к свободе творчества в работе. Однако детальное техническое задание - это не ограничение, а инструмент, помогающий обеим сторонам. Четкие требования, включая имена файлов и детали реализации, позволяют:
- Избежать недопонимания и конфликтов в процессе работы
- Сократить время на уточнения и переделки
- Точнее оценить объем работ и сроки
- Обеспечить совместимость вашей работы с существующей системой заказчика
Возможно, стоит воспринимать подробное ТЗ как проявление профессионализма заказчика и возможность для вас работать более эффективно. Что вы думаете об этом подходе?
Очень неразумно разрабатывать бота на Питоне, чтобы потом скрещивать с АПИ для Опенкарта, РНР. Почему не сразу разработать на РНР и не изобретать велосипед?
A centralized server system for collecting and storing data from Planfix, 1C, Meta Ads, and Google Ads is needed, as well as a web dashboard for displaying and analyzing this data. All data, change history, calculations, and aggregated metrics must be stored exclusively in the server database. The dashboard should not store or duplicate business data. It must retrieve the necessary information from the server database via API according to user requests and display it in the form of KPIs, charts, tables, and detailed reports.
We are looking for support for a project based on Yii , we need to make edits and improvements to the database, there is partially a connection with the previous contractor .....................
It is necessary to migrate the database from CRM G-PLUS to MyChatBot Database volume - 26 thousand leads 2 funnels - Call center and Sales department with their own funnels Lead cards (besides name and number) have many different fields Leads also have voice recordings of calls. These also need to be transferred I expect an approximate amount and implementation timeline from the candidate
Create a dashboard for monitoring and analyzing the performance of the company's location network (branches) in Google Business Profile (GBP) through the official Google Business Profile API. Process via a script based on Google Apps Script (link to Google Sheets). Record data in Google Sheets (which serves as a database for Looker Studio). Update: Daily (with an indication of the last update date). Create a Google Cloud service account. The script runs once a day (trigger at 03:00 AM) and sends a request to the GBP API. It retrieves metrics for the previous day for each location (locationId). Records data in a flat format (row = unique combination of Date + Branch ID + Metrics). Key Performance Indicator CardsCard NameGBP MetricDynamic FormatProfile ViewsImpressions (Search + Maps)Percentage %, Sparkline (blue)CallsLocal Services Phone CallsPercentage %, Sparkline (green)Website ClicksWebsite ClicksPercentage %, Sparkline (purple)Direction RequestsDirection RequestsPercentage %, Sparkline (orange)Average RatingAverage Review RatingAbsolute change (e.g., +0.1), Sparkline (yellow)New ReviewsNew Reviews CountPercentage %, Sparkline (turquoise)
Hello everyone! I'm looking for a Backend Developer (NestJS) to work on a new project. What needs to be done Develop a REST API using NestJS. Prepare and maintain documentation through Swagger (OpenAPI), so that the frontend developer can automatically generate a client using Orval and always work with the current specification. Design a clean, scalable architecture that will be easy to maintain and develop. Requirements Strong knowledge of NestJS and TypeScript. Experience with PostgreSQL. Experience integrating with Supabase: authentication and authorization; working with the database; using the platform's built-in features. Experience integrating Stripe (through Supabase features). Understanding of API security principles, authorization, data validation, and application protection. Ability to write clean, structured, and extensible code. If you have relevant experience, please send: examples of projects or GitHub; your desired rate (for the screens I provided, so I can understand your rate, hourly is inconvenient as it's unclear what volume of work will be done, everyone has a different pace);