• BotHunter
  • Регистрация в сервисе
  • Быстрый старт
  • Руководители, Сообщества, Тарифы
  • Мессенджеры и соц. сети
    • ВКонтакте
      • Как подключить сообщество ВК к системе
        • Возможные ошибки
      • Форматирование текста ВКонтакте
      • Виджеты
      • Вложения
    • Telegram
      • Вложения
      • Начало работы
        • Как подключить бота к системе
        • Как создать бота для Telegram
      • Особые возможности
        • Чат-бот для личных сообщений
        • Загрузка больших вложений
        • Меню для чат-ботов в Telegram
        • Настройка информации о боте в Telegram
        • Отправка стикеров и эмоджи
        • Работа чат-ботов в каналах
        • Условия проверки в Telegram
        • Запуск бота по ссылке
      • Лимиты Telegram
    • MAX
      • Как создать бота в MAX
      • Как сделать простого чат-бота?
      • Запуск бота по ссылке
      • Активности для ботов Max
      • Работа чат-ботов в каналах
    • Одноклассники
      • Как подключить сообщество к системе
      • Как создать бота для Одноклассников
  • Автоматизация
    • Чат-боты
      • Как сделать простого чат-бота?
      • Основные принципы работы ботов
        • Как создаются боты?
        • Ответы на частые вопросы
        • Принцип работы цепочек
      • Конструктор
        • Навигация и интерфейс
          • Масштабирование
          • Поиск пользователя в боте
          • Поиск шага
          • Ошибки в чат-ботах
          • Формы стрелок
          • Соединение блоков
          • Центрирование рабочей области
          • Поиск связанных блоков
          • Группировка блоков
          • История шагов в боте
        • Блоки
          • Условие
            • Текст
            • Время
            • Переменные
            • Боты
            • Списки
            • Пользователь
            • Публикации
            • Магазин
            • Дополнительно
            • Чат/канал
            • Регулярные выражения
            • Поиск телефона в сообщении
          • Действие
            • Переменные
              • Переменные пользователя
              • Переменные сообщества
            • Боты
              • Действия с ботами
            • Списки
              • Списки пользователей
              • Облачные списки (VK)
              • Черный список сервиса (VK)
            • Страницы
              • Мини-лендинги
            • Пользователи
              • Профиль пользователя
            • Интеграции
              • Действия с платежными системами
              • Действия с интеграциями
            • Дата и время
            • Сообщения
            • Беседы (VK)
              • Управление участниками беседы
            • Чаты (TG)
              • Действия с темами в чате
              • Действия с чатами
            • Текст
              • Парсер текста
            • Сообщество (VK)
              • Публикации
              • Комментарии
              • Аудиозаписи
            • Аналитика
              • Воронки
            • Дополнительно
              • Функции
                • Калькулятор
                • Обрезать текст
                • Привести текст к нижнему/верхнему регистру
                • Найти и заменить
                • Разбить текст на части
                • Получение уникального идентификатора
              • Запрос во вне
          • Сообщение
            • Редактирование сообщения
            • Особенности Telegram
            • Форматирование текста Telegram
            • Отправка стикера в VK
            • Как отправлять пост вложением
            • Отправка сообщений другому человеку, в тему чата или от другого сообщества
            • Ожидающие действия
            • Клавиатура (кнопки)
            • Как отправить премиум эмодзи в Telegram
          • Таймер
      • Аналитика
        • Ошибки в чат-ботах
        • Уведомления об ошибках
      • Активности
        • Активности ботов для ВКонтакте
        • Активности ботов для Telegram
        • Активности ботов для Одноклассников
        • Запустили другим ботом или внешним источником
      • Расширенные настройки бота
      • Как поделиться чат-ботом
    • Примеры чат-ботов
      • Ответ на "Привет"
      • Сбор телефона и email
      • Сертификаты/именные изображения
        • Изображение с добавлением персонализированного текста
        • Изображение с персонализированным фото
      • Борьба с "умными" спамерами в беседе VK
      • Модератор чата/беседы (карма-бот)
      • Аукцион
      • Оповещение о комментариях с вопросом
      • Печенька с предсказаниями
      • ChatGPT Шаблон для изображений
    • Переменные
      • Стандартные переменные
        • Переменные дат
      • Переменные пользователя
      • Переменные сообщества
      • Дополнительно
        • Сложные переменные
    • Интеграции
      • TH таблицы
        • Возможности и принцип работы
      • Платежные системы
        • Как выдавать ссылки на оплату и отслеживать сами оплаты в боте?
        • Продамус
          • Рекуррентные платежи
        • Tinkoff
        • ЮKassa
          • Рекуррентные платежи
        • ЮMoney
        • CloudPayments
        • Robokassa
        • Telegram Payments
      • Google Таблицы
        • Подключение
        • Возможности и принцип работы
      • ChatGPT
      • SMSC
      • GetCourse
      • Автопилот
      • Бизон365
      • Albato
        • Связка с amoCRM
        • Связка с Google Meet
      • amoCRM
      • DashaMail
      • Voice Password
    • Аналитика в BotHunter
    • UTM-метки
  • Пользователи
    • Действия с пользователями и фильтры
    • Возможности для ВКонтакте
    • Списки пользователей
    • Как перенести подписчиков из других сервисов?
      • Senler
      • BotHelp
      • SaleBot
      • SendPulse
      • Гамаюн
  • Рассылки
    • Рассылка
  • Страницы
    • Приложение VK
      • О приложении
      • Подключение и настройки видимости
    • Мини-Лендинги
      • Создание мини-лендинга
      • Сбор номера телефона и Email
      • Частые вопросы
    • Аналитика
      • Отслеживание действий пользователя VK
      • VK Пиксель
      • Яндекс.Метрика
  • Полезные материалы
    • Как узнать свой ID в мессенджере/соц. сети
    • Глобальные обновления
      • Система папок
      • Глобальное обновление 18.12.2022
      • Глобальное обновление 07.02.2022
  • Разработчикам
    • API
      • Константы
      • API Ключ
      • Методы
        • Боты
          • Добавить пользователя в бота
          • Удалить пользователя из бота
        • Пользовательские переменные
          • Получить
          • Установить
          • Очистить
        • Глобальные переменные
          • Получить
          • Установить
          • Очистить
    • Вебхуки
  1. Автоматизация
  2. >
  3. Чат-боты
  4. >
  5. Основные принципы работы ботов

Принцип работы цепочек

Эта статья для более продвинутых пользователей, кто хочет понимать все тонкости работы ботов в BotHunter

По умолчанию боты в сервисе работают по таким правилам:

  • 1 пользователь = 1 цепочка выполнения

  • Ожидающие действия важнее, чем продолжение без ожидания

Правила можно менять в настройках конкретного бота, про это написано тут:

Расширенные настройки бота

В этой статье мы рассмотрим действие по умолчанию.

1 пользователь = 1 цепочка

Если человек уже находится в боте, то заново он не будет добавлен

Для чего это сделано и как это работает

Вот пример бота, который реагирует на входящее сообщение, затем проверяется на соответствие слову "купить" и отправляет сообщение.

nullnull

После этого в блоке сообщения мы ожидаем от человека снова слово "купить".
И тут возникает такая проблема: бот запускается на слово "купить" и дальше мы ждем это же слово.

Как поступить?

Решением этого вопроса как раз и послужил первый принцип работы цепочек: по умолчанию человек может иметь только 1 цепочку в боте.

Если я сейчас напишу ещё раз слово "купить", то получу своего обещанного слона

null

Далее, если посмотреть на бота ещё раз, то мы видим, что после сообщения со слоном нет никаких связей.

Это значит, что как только человек получит это последнее сообщение, он завершит выполнение цепочки и может быть добавлен в бота заново.

null

Ожидающие действия важнее, чем продолжение без ожидания

Дальнейшее описание применимо для случая, когда вы выключили настройку в боте "Разрешить пользователю иметь несколько активных цепочек"

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

null

Здесь пункт 1 - ожидающие действия. Про них подробно написано здесь:

Ожидающие действия

Пункт 2 - возможность продолжения без ожидания. То есть, как только отправлено сообщение, сразу выполнить что-то ещё.

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

Если добавлено ожидающее действие, но от него не идет связь, то оно игнорируется

Связь от кнопки в клавиатуре = ожидание ответа от пользователя

Пример на скриншоте ниже будет работать так:

Как только человек получит сообщение из Шага 2, он будет находиться в Шаге 2 и от него будет ожидаться ответ на сообщение.

Нижняя ветка с таймерами будет проигнорирована.

Как сделать, чтобы работали обе ветки - прочитайте в пункте про Ожидающие действия.

null

Также важно упомянуть случай, если у вас установлены несколько ожидающих действий в блоке:

null

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

Напоминаем, что здесь мы рассматривали работу ботов по умолчанию.

Все особенности можно перестроить под себя в расширенных настройках бота.