Задать вопрос
  • Можно создать такого Телеграм-бота?

    @DeNRuDi
    Да, можно сделать но самым элегантным способом будет делать все в Telegram без лишних интеграций, веб-интерфейсов и тд. как заявляют в других ответах, да и вам проще будет создать.
    Заявки могут приходить в группу, где уже находятся сами менеджеры, а каждый уже будет распределять заявки.

    Но перед разработкой прежде нужно понимать как работают под капотом Telegram-боты. Все они построены и управляются по API, но для вас сделали удобную оболочку в виде библиотек/фреймворков, которыми просто управлять. Поэтому если вы создадите бота, и просто отправите ему текст - он, естественно, ничего вам и не ответит, потому что нужно как-то обработать этот запрос.

    Итого:

    1 шаг - познакомиться с библиотекой pyTelegramBotAPI
    Это очень простая библиотека, в гугле очень много информации на эту тему (если вам нужен 1-2 проекта, то можете остановиться на ней, но если рассматриваете дальнейшую разработку ботов или ожидаете максимальную производительность - лучше сразу изучить aiogram)

    2 шаг - познакомиться с базой данных
    Сделать можно 2 вариантами:
    2.1 Базой данных может выступать сам Телеграм, например заявка будет отправляться в группу, и оттуда уже можно извлекать этот текст, ничего сложного и лишнего не надо будет подключать (за исключением разобраться, как нумеровать заявки)

    2.2 Подключить реальную базу данных
    Да это будет чуть-чуть сложнее, для начала можно и sqlite3. Просто ознакомьтесь с CRUD-операциями, этого будет достаточно с головой.
    Чтоб было проще - воспользуйтесь программой SQLiteStudio.
    На будущее рассмотрите полноценные базы данных mysql/postgresql или nosql, так как sqlite имеет свои недостатки.

    3 шаг - приобретите свой сервер
    Чтобы запускать ботов - есть 2 варианта: polling, и вебхуки. 2 вариант надёжнее и сложнее, но 1 будет отличным стартом. Плюс 1 вариант даст вам удобство в разработке и запуске скрипта всего 1 командой bot.polling().
    4 шаг - позаботьтесь на сервере о бесперебойной работе скрипта
    Если вы будете запускать на linux, вам нужно будет написать systemd-файл (к примеру bot.service) который будет поднимать ваш скрипт, если произошла какая-то ошибка в коде.
    На этом все)

    P.S Но так как я имею уже достаточно большой опыт в разработке, я бы строил с использованием таких технологий:
    aiogram + FastAPI + uvicorn + mysql.
    Удачи в разработке!
    Ответ написан
    1 комментарий