В этой статье мы детально рассмотрим что такое чат-боты и обсудим их разновидности.

Чат-бот – компьютерная программа, написанная разработчиком, которая взаимодействует с пользователем через интерфейс мессенджера или окна чата на сайте. Бот понимает сообщения(команды, файлы, текст и т.д.) и умеет работать с полученной информацией – именно разработчик вкладывает логику в бота и учит отвечать на команды пользователя.

Сложно? Давайте разбираться.
Чат-боты, используя правила, выполняют определенные действия, о которых их просит пользователь. То есть при нажатии на кнопку или ввод команды “Корзина”, бот выведет список добавленных в корзину товаров. Как же это выглядит со стороны разработчика:
в зависимости от бизнес-логики чат-бота, разработчик предусматривает все возможные правила, по которым будет работать программа.

Разработчик програмирует логику бота в формате “Если пользователь отправляет команду ‘Корзина’, то ему в ответ нужно отправить список добавленных товаров в корзину”. Но и на этом еще не все, ведь нужно предусмотреть и остальные возможные ситуации:

  • что будет, если пользователь ничего не добавлял в корзину(корзина пуста)
  • что будет, если пользователь уже открыл корзину и пытается сделать это еще раз
  • что будет, если пользователь перешел в корзину и ввел команду, которую нельзя использовать находясь в корзине
  • и многое другое

А теперь кажется – так тут же все просто, но на самом деле то, что делает разработчик, выглядит так (вчитываться не обязательно):

name = '';
surname = '';
age = 0;
@bot.message_handler(content_types=['text'])
def start(message):
    if message.text == '/reg':
        bot.send_message(message.from_user.id, "Как тебя зовут?");
        bot.register_next_step_handler(message, get_name); #следующий шаг – функция get_name
    else:
        bot.send_message(message.from_user.id, 'Напиши /reg');

Самостоятельно, без опыта создания чат-ботов, сделать подобную программу практически невозможно. На помощь может прийты опытная команда разработки подобных решений: