@pludimas

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

Здравствуйте!

Хочу создать телеграм-бота для взаимодействия с клиентами. По неопытности не знаю возможно реализовать такой алгоритм или нет, подскажите.

Клиент пишет боту список деталей которые его интересуют, менеджер на той стороне видит его сообщение, обрабатывает список и присылает в мессенджер предложение. Менеджеров несколько, клиентов еще больше, поэтому сообщения от клиентов к боту должны видеть все менеджеры, а уже между собой договорятся кто какое сообщение обрабатывает и отвечает.

Я изучаю Python, думаю разберусь. Сейчас мне непонятно пока куда копать и какие инструменты использовать и возможно ли вообще такое реализовать. Сейчас компания работает по той же схеме, только на обычной электронной почте. Клиенты кидают запросы на почту, у всех менеджеров подключен этот почтовый ящик и они на эти письма отвечают. Хотелось бы реализовать такое в мессенджере.

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

Спасибо за подсказки.
  • Вопрос задан
  • 1612 просмотров
Решения вопроса 1
@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.
Удачи в разработке!
Ответ написан
Пригласить эксперта
Ответы на вопрос 4
Zoominger
@Zoominger Куратор тега Python
System Integrator
Да, можно.
Ответ написан
Комментировать
@Zakhar1044
Та даже тот самий jivo сайт подойдет
Ответ написан
Комментировать
vabka
@vabka
Токсичный шарпист
Да, можно.
Тут большая часть работы будет в полоскости распределения обращений от клиентов к менеджерам и обратно, чтобы это было удобно - скорее всего это придётся делать через какой-то дополнительный веб-интерфейс, или через другой месседжер (делал подобное в rocketchat).
Ответ написан
Комментировать
@InternetMaster
Так это чат-бот стандартный. Таких миллионы, соответственно можно!

Следует понимать, что надо изучать БД sqlite3 обязательно!

Возвращайся с уже конкретными вопросами по отдельным реализациям твоего скрипта когда станешь по умнее.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы