Телеграмм бот для поддержки
10 000 руб. за проект
Цель:
Разработать и интегрировать функционал для Telegram бота "Аксата", позволяющий создавать запросы и инциденты, получать их статусы, а также прикреплять переписку к соответствующим запросам и инцидентам в системе управления инцидентами iTop.
Основные требования:
Обьем кода на проект до +-600 строк
Разработать и интегрировать функционал для Telegram бота "Аксата", позволяющий создавать запросы и инциденты, получать их статусы, а также прикреплять переписку к соответствующим запросам и инцидентам в системе управления инцидентами iTop.
Основные требования:
- Интеграция с API iTop:
- Исследовать API iTop для понимания методов создания инцидентов, запросов, получения их статусов и прикрепления данных.
- Реализовать функции для отправки HTTP запросов к API iTop. https://www.combodo.com/itop (через HTTP API)
- Распознавание и обработка команд:
- Реализовать логику для распознавания следующих текстовых команд от пользователей в Telegram:
- "Аксата создай инцидент [текст инцидента]"
- "Аксата создай запрос [текст запроса]"
- "Аксата дай статус" (для получения списка всех запросов и инцидентов)
- "Аксата прикрепи к [номер запроса/инцидента]" (для прикрепления переписки)
- Обработать команды и выполнять соответствующие действия в iTop через API.
- Управление сессиями и связью с группами Telegram:
- Разработать систему для отслеживания соответствия между группами в Telegram и клиентами в iTop.
- Управлять сессиями пользователей для последующих запросов и операций.
- Логирование и отладка:
- Предусмотреть логирование важных событий и ошибок.
- Тестировать функционал на разных сценариях использования.
- Безопасность и конфиденциальность:
- Обеспечить безопасное хранение и передачу конфиденциальной информации.
- Провести проверку на уязвимости и возможные риски.
- Язык программирования: Python.
- Используемые библиотеки: requests для HTTP запросов, json для работы с данными в формате JSON, и другие необходимые библиотеки.
- Платформа: существующий код Telegram бота на Python.
- Изучение API iTop и определение необходимых методов.
- Разработка функций для взаимодействия с iTop через API.
- Реализация системы распознавания и обработки команд в Telegram боте.
- Создание логики управления связями между группами Telegram и клиентами iTop.
- Разработка и реализация механизма безопасности.
- Тестирование, отладка и деплой.
- Рабочий Telegram бот с возможностью создания запросов и инцидентов в iTop.
- Функционал получения статусов и прикрепления переписки к запросам и инцидентам.
- Документация по использованию нового функционала.
- Отчет о проведенном тестировании и обеспечении безопасности.
- Разработчику может потребоваться общение с командой iTop для уточнения деталей API.
- Возможно, потребуется дополнительная настройка серверной части для обработки запросов.
- Инициализация: Скрипт загружает конфигурационные данные из файла JSON и настраивает соединители (connectors) для работы с разными ботами в Telegram. Для каждого бота он настраивает параметры логирования, таймеры для получения обновлений и запускает поток для обработки обновлений.
- Логирование: Есть функция log, которая записывает сообщения в лог-файлы, если это разрешено в конфигурации.
- Отправка уведомления о наборе текста: Функция sendAction используется для имитации действия пользователя (например, когда бот "печатает" сообщение). Это продолжается до тех пор, пока не будет получено новое сообщение или не истечет таймер.
- Получение обновлений: Метод getUpdates периодически запрашивает новые сообщения или обновления у Telegram API. Он обрабатывает эти сообщения, проверяя, подходят ли они под установленные критерии (например, whitelist, activators).
- Обработка сообщений: Код анализирует текст полученных сообщений и выполняет соответствующие действия, такие как запуск функции набора текста, отправка сообщений через API и обновление сессий.
- Взаимодействие с внешним сервисом: После обработки входящих сообщений, скрипт отправляет запрос на локальный сервер с данными о сообщении и сессии, и обрабатывает ответ от сервера.
- Отправка ответов: После получения ответа от внешнего сервиса, скрипт отправляет соответствующие сообщения обратно в чат Telegram.
- Управление сессиями: Скрипт сохраняет и обновляет данные сессий пользователей для последующих взаимодействий.
Обьем кода на проект до +-600 строк
Отзывы
В заказе есть исполнитель
При переводе заказа из архивного в актуальный, текущий исполнитель будет снят с задачи.
Выберите тип сделки
С безопасной сделкой вы всегда сможете вернуть средства, если что-то пойдет не так. С простой сделкой вы самостоятельно договариваетесь с исполнителем об оплате и берете на себя решение конфликтов.