BotKit — создание бота для мессенджера TamTam без программирования

Всем привет. Этой публикацией я бы хотел начать серию статей на тему создания своего бота для мессенджера TamTam без использования навыков программирования. Для создания бота мы будем использовать конструктор ботов BotKit.

TamTam @BotKit Zaur Abdulgalimov
TamTam @BotKit Zaur Abdulgalimov

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

Получение токена

Чтобы начать работать с конструктором вам необходимо зарегистрировать своего бота с помощью официального бота @PrimeBot и получить токен. Если у вас уже есть токен бота, можете пропустить этот этап и приступить к подключению бота к конструктору. Чтобы получить токен, выполните следующие действия:

  • Запустите бота @PrimeBot
  • Напишите команду /create
  • Напишите username, уникальное имя вашего бота
  • Напишите имя бота, здесь можно написать все что угодно
  • PrimeBot вам покажет токен, который необходимо запомнить. И не показывайте его тем, кому вы не доверяете своего бота.
TamTam @PrimeBot get token Zaur Abdulgalimov
TamTam @PrimeBot get token Zaur Abdulgalimov

Подключение бота к BotKit

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

  • Запустите бота @BotKit и нажмите кнопку Добавить бота
  • Напишите текст вашего токена, или перешлите пост с токеном от @PrimeBot
  • Если токен валидный, бот покажет имя добавляемого бота и предложит подтвердить действие. Жмите Да
  • Вы увидите главное меню вашего бота, подключенного к BotKit

Приветствие. Триггер Старт бота

Рутина с подключением завершена, давайте уже сделаем что нибудь интересное. В конструкторе все построено на Триггерах. Триггер - это набор условий, при выполнении которых будут запущены Реакции. Реакции - это заданные вами действия, например Написать текст или Начать диалог с администратором бота. Чтобы ваш бот присылал пользователю приветственный текст(любой контент с медиа и кнопками) каждый раз при запуске бота, выполните следующие шаги:

  1. Откройте меню Триггеры из главного меню вашего бота
  2. Нажмите кнопку Добавить триггер
  3. Из списка триггеров выберите Старт бота
  4. В меню триггера откройте меню Реакции
  5. Нажмите кнопку Добавить реакцию
  6. Выберите тип реакции [text]
  7. Напишите текст реакции. В тексте можно использовать различные переменные, например ${user} будет заменено на имя пользователя. Подробнее про другие переменные расскажу как нибудь в отдельной публикации.
  8. Триггер и реакция к нему созданы

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

Настройки триггера

Если же вы хотите чтобы триггер срабатывал только для новых пользователей, поставьте галочку Новый пользователь в настройках триггера:

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

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

  • Создаем триггер Старт бота с галочками Новый пользователь и Продолжить поток. В реакциях указываем приветственный текст.
  • Создаем еще один триггер Старт бота без галочек Новый пользователь и Продолжить поток.

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

Настройки реакции

В меню реакции вы можете изменить заданные значения или выставить настройки:

Настройки реакции Zaur Abdulgalimov
Настройки реакции Zaur Abdulgalimov
  • Текст - изменить текст реакции.
  • Кнопка Скрыть текст - если включить эту опцию, тогда под текстом реакции будет отображаться кнопка Скрыть, нажав на которую пользователь сможет быстро удалить пост из истории.
  • Таймаут - здесь можно указать время задержки для отправки поста, т.е. этот текст будет отправлен через указанное время.

У других реакций может быть больше разных настроек.

Метрики

Как вы уже наверняка заметили, в меню триггера есть кнопка Метрика:

Кнопка метрика триггера Zaur Abdulgalimov
Кнопка метрика триггера Zaur Abdulgalimov

По нажатию откроется web-страница где вы сможете увидеть в виде графика когда и сколько раз был выполнен этот триггер:

График триггера Zaur Abdulgalimov
График триггера Zaur Abdulgalimov

Что еще умеет бот?

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

  • Использовать множество разных триггеров, включая /команды, #хештеги и другие
  • Создавать контент с медиа файлами и кнопками. Кнопки могут быть ссылками, переходом в следующее меню, голосованием...
  • Организовать обратную связь с пользователями задав пару триггеров (не сложнее чем триггер для приветствия, созданный выше)
  • Делать рассылку по всем пользователям вашего бота
  • Создать форму для заполнения(набор последовательных вопросов, на которые отвечают пользователи), с последующей выгрузкой результатов, например в Excel.
  • И еще много чего ...

В следующей статье я расскажу как создавать контент с медиа файлами и кнопками и публиковать в чате/канале.

Если у вас есть вопросы/предложения, буду рад ответить в комментариях.

10
14 комментариев