# Платформа botboom.ru

Чат-боты в Telegram

Платформа BotBoom реализует возможность создания чат-ботов с различной функциональностью в системах мгновенных сообщений.&#x20;

Основные возможности системы:

* Отображение каталога товаров&#x20;
* Формирование корзины заказа&#x20;
* Оправка заказа&#x20;
* Форма обратной связи
* Задание параметров доставки&#x20;
* Отправка сообщений конкретному пользователю&#x20;
* Рассылка сообщений по всем пользователям&#x20;
* Платёжные интеграции&#x20;
* Диалог в зависимости от текста пользователя&#x20;
* Создание голосования/опросы/тесты
* Создание и проведение курсов, обучений, интенсивов

Создание и настройка бота на платформе не требует знания языков программирования, глубокого понимания работы чат платформ, навыков создания алгоритмов.&#x20;


# Возможности системы

2021.02.08

## Общее

* Приветственное сообщение (команда */start*)
* Сообщение **Помощь**. Показывается по команде */help* или по кнопке в меню
* В сообщение **Помощь** можно добавить кнопку **Обратной связи**, по нажатии которой пользователь бота может отправить сообщение администрации бота
* В боте можно задать авторизацию. Авторизованные как администраторы пользователи бота получают служебные сообщения, сообщения о заказах, подписках на курсы, сообщения от пользователей и т.д.
* Большинство кнопок и сообщений бота которыми он взаимодействует с пользователем настраиваемы. Можно использовать emoji.
* В системе можно посмотреть список подключенных к боту пользователей, заблокировать или назначить администратором. По каждому пользователю можно посмотреть его баланс в боте-магазине, сделанные заказы, привлечённых по реферальной ссылке пользователей, задать персональную скидку.
* Из административного вэб интерфейса возможна рассылка сообщений&#x20;

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

### Меню бота

* Возможно задание настраиваемых текстовых кнопок нижнего меню и инлайн кнопок верхнего меню.
* Кнопки, при нажатии, могут показывать&#x20;

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

  Кнопки реализуют логику использования бота и являются основными элементами навигации.
* Доступна загрузка из Yandex Market Language (YML)
* Доступна выгрузка и загрузка в собственный формат магазина для организации резервного копирования

### Диалоги

Реализуют реакцию бота в зависимости от входящего сообщения.

* В зависимости от текста в сообщении от пользователя подсистема отвечает
  * текстом
  * картинкой
  * товаром - будет показан соответствующий заданным настройкам товар
  * разделом каталога - будет показан раздел
  * голосованием
  * курсом
  * списком истории заказов
* поиск происходит по всему сообщению без учета регистра

### Магазин

Подсистема является полноценной реализацией Интернет магазина

* Магазин состоит из Товаров. Каждый товар имеет настройки:
  * расположения в древовидной структуре каталога
  * порядка вывода в разделе - для сортировки вывода
  * состояние "Активности" товара - показывать его покупателям или нет
  * описание
  * артикул
  * настройку учета количества на складе
  * до 3х вариантов с разной ценой и отдельным учетом количества
  * до 10 изображений
  * настройки действий при отправке заказа - отправляются покупателю сразу как отправлен заказ в котором есть этот товар
  * настройки цифрового товара - после подтверждения оплаты заказа, покупателю автоматически могут быть отправлены текст, изображение, ссылка на адрес в Интернет или файл pdf.
* Возможно включение системы оценки товара - лайк/дислайк
* Для каждого товара можно сформировать QR код для размещения на печатной продукции, в оффлайн, в видео и пр.
* Доступно отображение списка заказов, время, имя покупателя, порядковый номер
* Управление статусами заказов - принят, оплачен, закрыт, отменён
* Возможен запуск нескольких типов программы лояльности:
  * фиксированная ссылка - для всех, по времени
  * купоны и сертификаты - можно задать размер скидки в процентах или деньгах, допустимое количество использований, код, срок действия
  * бонусная система - включает для пользователей внутренний баланс в магазине. можно задать параметры начисления бонусов с заказа, за привлечение по реферальной ссылке, за заказы рефералов
* Реализована интеграция с баллами репутации в системе <https://chatkeeper.app/>
* В общих настройках магазина можно задать:
  * запрос адреса доставки
  * параметры минимальной суммы заказа для включения в сумму доставки
  * настройки лайков, запроса комментария при заказе
  * ограничения по времени работы
  * платёжные интеграции:
    * Ю Касса
    * Ю Мани
    * QIWI
    * платёж по ссылке

### Короткие ссылки

Подсистема предназначена для анализа источников прихода пользователей в бота - формируются короткие ссылки(и QR код), по которым анализируются источники привлечения.

* Генерация короткой ссылки вида <https://btbm.ru/uZ9OwEv>
* Генерация QR кода для ссылки
* Передача текста в бота при переходе по ссылке
* Генерация ссылки на сторонний ресурс
* Статистика переходов по ссылке

## Голосования

Позволяет создать голосование, опрос, квест, викторину. У каждого голосования есть настройки:

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

### Курсы

Реализует возможность создания курсов состоящих из отдельных уроков. С возможностью платной подписки.

* Можно задать цену подписки
* Доступна система модерируемых отзывов
* Каждый курс состоит из неограниченного количества уроков
* Урок может быть текстом, ссылкой на страницу с занятием или видео&#x20;
* К каждому Уроку и Курсу можно прикрепить Тест(или цепочку тестов)
* Можно посмотреть список подписчиков курса и отправить только им сообщение&#x20;


# Бот-магазин по шагам

Пошаговая инструкция создания бота - магазина в Телеграм

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

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

#### Преимущества Интернет магазина - чат бота

* Скорость работы. Интерфейс магазина-бота лёгок, и гораздо более быстр чем интерфейс сайта наполненного графикой, дизайнерскими изысками, тяжёлым кодом. Особенно это чувствуется при плохом качестве Интернет.
* Близость к клиенту. Все очень привыкли к мессенджерам и через бота Вы действуете как бы на площадке клиента - в его родном окружении. Магазин всегда под рукой - рядом с другими чатами, общением с друзьями, коллегами, близкими.
* Лёгкость обратной связи. В отличие от сайта, пользователю в боте гораздо легче и привычнее написать Вам и получить оперативную обратную связь, что однозначно положительно сказывается на лояльности. Также, в некоторых платформах есть функционал опросов, форм обратной связи и искусственного интеллекта.
* Возможности оповещения. Однажды подключив бота, клиент сразу отдаёт Вам прямой контакт с ним и будет получать все Ваши новости, информационные блоки и прочее. Если конечно Вы не будете излишне назойливы и не заставите клиента заблокировать бота :).

**Процесс создания Интернет магазина - бота в Телеграм состоит из шагов:**

1. Регистрация бота через @botfather, запуск бота в botboom
2. Основные настройки
3. Нижнее меню
4. Меню продукции
5. Настройка дополнительных параметров


# 1.Регистрация бота через @botfather, запуск бота в BotBoom

Открываем Телеграмм клиент, в поиск вводим @botfather (или откройте по ссылке: @botfather), жмём Запустить или start. Перед вами откроется полный список команд для управления BotFather: создание и настройка ботов.

![](https://3772403088-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Ll7689IDnKLtjpgnzVq%2F-MNTb7ESoHGq0Fm6keNJ%2F-MNTbsk-U73a4a9JslX3%2Fimage.png?alt=media\&token=39ba262f-c9b1-4ef2-ba48-e658cb76f2ce)

Отправляем команду /newbot, вводим имя бота - так он будет отображаться в списке контактов. Следующий вопрос botFather - имя бота по которому его смогут найти - оно должно быть уникальным во всём Телеграмм и заканчиваться на bot.

Как подберёте свободное имя - botFather пришлёт сообщение об удачной регистрации и самое главное - токен - набор символов необходимый для подключения бота:

Use this token to access the HTTP API: 123456789:AAEdeHEUfLs1yQtLplwtcZcKXXXXX-XXXXX\
Далее Вы можете установить описание бота, фото профиля и т.д. Вернуть список команд можно отправив боту /help.

Копируем строку с токеном - он понадобится нам на следующем шаге.

### Регистрация в платформе управления ботом, подключение своего бота

Переходим на сайт платформы - [https://botboom.ru](https://botboom.ru/), в верхнем меню нажимаем Подключить, далее кнопка Зарегистрироваться. Бесплатно даётся 2 месяца пользования сервисом - вполне достаточно для всех тестов.

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

После регистрации, Вы попадаете в панель управления ботом. Сейчас бот не создан - жмём Создать:

![](https://3772403088-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Ll7689IDnKLtjpgnzVq%2F-MNTb7ESoHGq0Fm6keNJ%2F-MNTbyIbJwhUuBTFpRsM%2Fimage.png?alt=media\&token=3a930591-4b25-4b51-834e-646bf45d24fd)

В появившуюся форму вводим скопированный ранее токен бота и адрес на который будут приходить заказы(если Вы воспользуетесь функционалом интернет магазина в боте).

Система стартует бота, и Вас уже есть ссылка для открытия бота - можете открыть его в Телеграм.

![](https://3772403088-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Ll7689IDnKLtjpgnzVq%2F-MNTb7ESoHGq0Fm6keNJ%2F-MNTc7Ozj85zB7hWCHMa%2Fimage.png?alt=media\&token=19c9574e-550f-4c8f-b45a-da3ea1e991ba)

Вы увидите 3 кнопки по умолчанию и на все сообщения бот будет отвечать заданным по умолчанию сообщением "Не понял Вас".

![бот запущен!](https://3772403088-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Ll7689IDnKLtjpgnzVq%2F-MNTb7ESoHGq0Fm6keNJ%2F-MNTcCE6PMqGpMM3XvK5%2Fimage.png?alt=media\&token=3e0ece01-eb9a-4e2b-a114-8e775241f559)


# 2.Основные настройки

Задаём общие настройки поведения бота

&#x20;Теперь нам надо сделать небольшие начальные настройки - идём в ***Общие настройки:***

![](https://3772403088-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Ll7689IDnKLtjpgnzVq%2F-MNTb7ESoHGq0Fm6keNJ%2F-MNTccGfTrmH3rHeXLrb%2Fimage.png?alt=media\&token=86462e1c-323b-4260-b78e-769864646a81)

и вводим сообщения которые будут показываться при старте бота и по нажатию на кнопку помощь.

Активируем настройки обратной связи - так Вашим клиентам будем проще связаться с администратором.

![](https://3772403088-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Ll7689IDnKLtjpgnzVq%2F-MNTb7ESoHGq0Fm6keNJ%2F-MNTchYL1bDMmXQelf92%2Fimage.png?alt=media\&token=061efaad-06f3-466e-9a0a-5053f190db4f)

Обязательно задаём пароль администратора бота - с его помощью Вы сможете получать заказы, общаться с покупателями и т.д.

![](https://3772403088-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Ll7689IDnKLtjpgnzVq%2F-MNTb7ESoHGq0Fm6keNJ%2F-MNTcllip4h1guggDFxF%2Fimage.png?alt=media\&token=26e74d83-418d-4f1c-9740-85de939d3a37)

***Сохраняем и активируем*** настройки, открываем бота для проверки сделанных настроек:

Отправляем боту текст */start* - он ответит стартовым сообщением. Нажимаем кнопку **Помощь** - получим в ответ текст заданный в помощи в настройках.

И, отправляем боту команду авторизации администратором:

*/auth adminPassword*

Вместо *adminPassword,* пароль из настроек.

![](https://3772403088-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Ll7689IDnKLtjpgnzVq%2F-MNTb7ESoHGq0Fm6keNJ%2F-MNTcqbDTJdh2yE_eQfM%2Fimage.png?alt=media\&token=58e73d0c-ae80-43c5-9788-278c3b31b4cc)

&#x20;В нижнем меню Вы появится кнопка **Администратор** - всё ок, базовая настройка готова.


# 3.Нижнее меню

Создание основных кнопок управления ботом

Спланируем нижнее меню. Предположим, делаем бота для небольшой бургерной.

Нижние кнопки Телеграм бота всегда на виду, поэтому вынесем туда пункты которые всегда должны быть под рукой покупателя:

* Контакты
* Меню
* Акции
* Помощь или обратная связь
* Мой заказ - кнопка просмотра заказа
* О нас

Переходим в раздел ***Меню бота*** и будем работать с этим блоком:

![](https://3772403088-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Ll7689IDnKLtjpgnzVq%2F-MNTb7ESoHGq0Fm6keNJ%2F-MNTdJvYdUHPvsRiSIcx%2Fimage.png?alt=media\&token=0c6f0609-edee-4289-bcb3-960afa1be8e9)

По одной удаляем ненужные кнопки и добавляем:

* Меню - с действием ***Главное меню каталога*** - кнопка покажет основное меню кафе

![](https://3772403088-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Ll7689IDnKLtjpgnzVq%2F-MNTb7ESoHGq0Fm6keNJ%2F-MNTdOJKlZnbPOkMBKfi%2Fimage.png?alt=media\&token=480fc6b1-5b91-45ce-a955-713d8840af76)

Для задания эмодзи можно использовать любой каталог эмодзи, например - <https://www.emojilo.com/ru/>

Отдельно стоит объяснить пункты ***Диалог*** и ***Текст:***

***Диалог*** - система реакций бота на присылаемый текст, настраивается в отдельном разделе и разберём её позже.

Сейчас используем тип кнопки ***Текст*** - тут всё просто, пользователь нажимает на кнопку и ему в ответ направляется сообщение заданное в появившейся форме:

![](https://3772403088-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Ll7689IDnKLtjpgnzVq%2F-MNTb7ESoHGq0Fm6keNJ%2F-MNTdSDl_zSmvkmE_iXr%2Fimage.png?alt=media\&token=7b0c79da-182b-47c6-9a3c-2b35567aeee8)

К сообщению можно прикрепить одно изображение.

Добавим кнопки:

* Акции: ***Тип действия -*****&#x20;Сообщение**
* Мой заказ: ***Тип действия -*****&#x20;Показать текущий заказ**
* Контакты: ***Тип действия -*****&#x20;Сообщение**
* Помощь: ***Тип действия -*****&#x20;Показать помощь**
* О нас: ***Тип действия -*****&#x20;Сообщение**

{% hint style="info" %}

#### Не забудьте после всех настроек нажать кнопку ***Сохранить***!!

{% endhint %}

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


# 4.Меню продукции

Забиваем товары магазина

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

Меню иерархическое, имеет древовидную структуру.

Сначала создадим необходимые разделы, потом уже в эти разделы добавим наши товары:

Разделы:

* Бургеры
* Салаты
* Гарнир
* Стейки
* Напитки

В любом разделе (в том числе и корневом) могут быть как вложенные разделы, так и отдельные товары.

Порядок отображения задаётся параметром ***Порядок сортировки***

![](https://3772403088-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Ll7689IDnKLtjpgnzVq%2F-MNTb7ESoHGq0Fm6keNJ%2F-MNTdo56GCxAanNZiWSS%2Fimage.png?alt=media\&token=554e3643-f2d4-4b96-af01-25c4ed9fd890)

Для добавления нового элемента используйте выпадающее меню в верхней части страницы:

![](https://3772403088-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Ll7689IDnKLtjpgnzVq%2F-MNTb7ESoHGq0Fm6keNJ%2F-MNTdsZLiItaxodthIjO%2Fimage.png?alt=media\&token=259fb103-ec0e-43f8-aae2-b1c677874b93)

Ок, разделы готовы:

![](https://3772403088-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Ll7689IDnKLtjpgnzVq%2F-MNTb7ESoHGq0Fm6keNJ%2F-MNTdvvQU2Q4uwAna6hy%2Fimage.png?alt=media\&token=d93e11bf-7e4a-4a4b-8c26-481554609df6)

Теперь добавим элементы типа ***Товар*** в созданные ранее разделы.

В форме создания товара заполняем ***Имя элемента***, ***Описание***. Нажимаем плюсик чтобы добавить вариант товара - допустимо 3 варианта с разной ценой(например размер пиццы или цвет одежды). Если вариантов нет, то поле Вариант лучше оставить пустым.

![](https://3772403088-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Ll7689IDnKLtjpgnzVq%2F-MNTb7ESoHGq0Fm6keNJ%2F-MNTe-Hi4JZK7l7dGQoW%2Fimage.png?alt=media\&token=caea251d-a670-4c09-83e1-7a7c8498719d)

Загружаем фото товара. Можно загрузить до 5 фотографий, которые будут отправлены пользователю по нажатию на отдельную кнопку.

![](https://3772403088-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Ll7689IDnKLtjpgnzVq%2F-MNTb7ESoHGq0Fm6keNJ%2F-MNTe3_g58H2Jo5-mRpx%2Fimage.png?alt=media\&token=b54445ae-5bd1-43ed-bb70-d4632a59b364)

Готово. Пользователи могут просмотреть меню, добавить товары в корзину и отправить Вам заказ.

![](https://3772403088-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Ll7689IDnKLtjpgnzVq%2F-MNTb7ESoHGq0Fm6keNJ%2F-MNTe6yN24Ip4ebRkgCM%2Fimage.png?alt=media\&token=fa125420-3b56-40db-b023-cf2ed4da96bb)


# 5. Настройка параметров магазина

Теперь поднастроим магазин:

Зададим параметры доставки:

![](https://3772403088-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Ll7689IDnKLtjpgnzVq%2F-MNTb7ESoHGq0Fm6keNJ%2F-MNTeR3Gmg_iQMojRKB_%2Fimage.png?alt=media\&token=2abc0a73-5850-4f93-b8e4-8f7f64cc98ef)

Настроим график работы:

![](https://3772403088-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Ll7689IDnKLtjpgnzVq%2F-MNTb7ESoHGq0Fm6keNJ%2F-MNTeVzbCxBy-DnWe85q%2Fimage.png?alt=media\&token=75b751a2-2bff-45d5-9a5a-059be77305d6)

Можно задать ежедневную скидку и включить бонусную систему для покупателей:

![](https://3772403088-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Ll7689IDnKLtjpgnzVq%2F-MNTb7ESoHGq0Fm6keNJ%2F-MNTeZo9HM7YeihqN2dR%2Fimage.png?alt=media\&token=872fc450-bb50-4b33-8dda-2844adebc7f0)

&#x20;Для отображения покупателю условий бонусной системы после её включения, необходимо описать их в текстовом поле на странице с настройками ***Скидки и бонусы*** и добавить кнопку в нижнее меню например так:

![](https://3772403088-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Ll7689IDnKLtjpgnzVq%2F-MNTb7ESoHGq0Fm6keNJ%2F-MNTecAIZXK7KxB5-GiC%2Fimage.png?alt=media\&token=7889cf57-cacf-43fd-a3a1-ef440ce757a5)

тогда при нажатии на эту кнопку покупателю будет показано сообщение:

![](https://3772403088-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Ll7689IDnKLtjpgnzVq%2F-MNTb7ESoHGq0Fm6keNJ%2F-MNTefYr9NSckFp6li95%2Fimage.png?alt=media\&token=0d8c8b4e-291f-4169-abc6-b1c586ac9d31)

И, наконец, можно включить интеграции с платёжными системами:

![](https://3772403088-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Ll7689IDnKLtjpgnzVq%2F-MNTb7ESoHGq0Fm6keNJ%2F-MNTejcJKr_xOXUy2HSh%2Fimage.png?alt=media\&token=582c02ea-35bd-4711-a2a7-abcb2b5525c3)


# Диалоги

**ДИАЛОГИ** - одна из ключевых систем настройки взаимодействия с пользователем бота. В настройках диалога Вы задаёте текст, вхождение которого в сообщение от пользователя боту, ищет система и отдаёт соответствующее действие и данные.&#x20;

Возможные действия:

* **Текст** - прислано "привет", отправить текст "Привет и тебе друг!"
* **Категория, товар** - точное! имя категории или товара. Прислано "пицца" - отправить категорию с пиццей. Прислано слово "акции" - отправить элемент каталога с описанием акций.
* **Картинка** - правильный url отправляемый пользователю в виде картинки.
* **Голосование** - запуск голосования. Например: прислано акции, в ответ отправляем Голосование: пройдите опрос и получите промокод с вариантами - Пройти/НЕТ. В конце опороса отдаём промокод или ещё какую плюшку.

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

![Меню Диалоги](https://3772403088-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Ll7689IDnKLtjpgnzVq%2F-Ll7Pg0wSn00-SyKmOf-%2F-Ll7QPQ_xgRrfNJN8ZBE%2Fimage.png?alt=media\&token=5f89f076-bfba-4eef-9e75-aaf4be62c7ab)


# Обратная связь

Каждый бот созданный на платформе предоставляет несколько вариантов организации обратной связи с пользователями.

1. Получение сообщений непосредственно в боте. Для этого необходимо авторизоваться в боте как администратор


# Программы лояльности


# КУПОНЫ И СЕРТИФИКАТЫ

Доступны следующие варианты выпуска купонов:

Сертификат:&#x20;

**при использовании в пополнении аккаунта:**

* может использоваться
* списывается полностью
* не проверяется количество использований и использовал ли его уже пользователь

**в заказе:**

* может использоваться
* списывается столько, сколько ушло в заказ
* не проверяется количество использований и использовал ли его уже пользователь

Купон на сумму:&#x20;

**при использовании в пополнении аккаунта:**

* НЕ может использоваться

**в заказе:**

* может использоваться
* списывается столько, сколько можно с учетом процента допустимого использования. остальное сгорает
* проверяется количество использований и использовал ли его уже пользователь

Купон на процент:&#x20;

**при использовании в пополнении аккаунта:**

* НЕ может использоваться

**в заказе:**

* заказ уменьшается на максимум из фиксированной скидки, купона и персональной скидки покупателя
* проверяется количество использований и использовал ли его уже пользователь


# Голосования

**Система голосований/опросов/тестов**

Подсистема ГОЛОСОВАНИЯ на самом деле не только голосование - она позволяет создать цепочку из нескольких вопросов с настраиваемой реакцией на ответы пользователя. Можно провести тестирование, опрос или выдать пользователю тот или иной товар в зависимости от его предпочтений.

Для создания голосования введите его название(используется только внутри административного вэб интерфейса), текст вопроса и создайте варианты ответов.\
При нажатии на кнопку нового варианта, в появившейся форме надо задать текст на кнопке варианта и действие в случае его выбора. Вариантами действия могут быть категория, товар или голосование. В случае категории или товара вводится их наименование, в случае голосования - его идентификатор - скопируйте его заранее в буфер обмена.

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

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

![Настройки голосований](https://3772403088-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Ll7689IDnKLtjpgnzVq%2F-Ll7Pg0wSn00-SyKmOf-%2F-Ll7QcPV_k0Hlv6-Rak1%2Fimage.png?alt=media\&token=22334a66-beef-4a2b-aaaa-0df3cb7d2ba0)

![Просмотр результатов голосования](https://3772403088-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Ll7689IDnKLtjpgnzVq%2F-Ll7Pg0wSn00-SyKmOf-%2F-Ll7QrmBOZKiPIZL_aH0%2Fimage.png?alt=media\&token=1efcc59b-5809-4674-8a05-14fa0c7fcd0c)


# Приём платежей

Интеграция с платёжными системами

### Яндекс для физлиц

&#x20;Яндекс сейчас предоставляет два направления приёма платежей - для юридических лиц и частников.

Для физических лиц:

1. Регистрируемся на сайте платформы - <https://yoomoney.ru/>. Заполняем необходимые формы, получаем статус "идентифицированный".
2. Из настроек пользователя в Юmoney копируем идентификатор кошелька:

![настройки Юmoney](https://3772403088-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Ll7689IDnKLtjpgnzVq%2F-MPiWaCieyxA27KKzKEE%2F-MPiY_VwWh_Wyu1yP0M5%2Fimage.png?alt=media\&token=43053f51-a672-4d87-96e8-27297f80a9d0)

3\. Переходим в botboom и вставляем в соответствующее поле, включаем метод оплаты:

![настройки Юmoney в панели botboom](https://3772403088-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Ll7689IDnKLtjpgnzVq%2F-MPiWaCieyxA27KKzKEE%2F-MPiYyRz6QwngoARpw7M%2Fimage.png?alt=media\&token=e0a978bf-c592-4e74-bc35-8451fd2dd756)

4\. Внизу кнопка Сохранить и активировать. Метод оплаты подключен.

5\. Если хотим получать автоматические уведомления о пополнении кошелька - копируем URL для уведомлений - <https://api.botboom.ru/money/yandex> и вставляем его в настройках Юmoney:

![](https://3772403088-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Ll7689IDnKLtjpgnzVq%2F-MPiWaCieyxA27KKzKEE%2F-MPiZepglX6aQJHcSSuB%2Fimage.png?alt=media\&token=b64b346a-77fd-4fd0-a708-dcf17e9ad24c)

далее Пакеты и другие сервисы, Уведомления:

![](https://3772403088-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Ll7689IDnKLtjpgnzVq%2F-MPiWaCieyxA27KKzKEE%2F-MPi_23PQWBoG9JgUVkk%2Fimage.png?alt=media\&token=4eb0a44c-1144-491c-8d79-66275580ac55)

Нажимаем Подключить и вставляем URL:

![](https://3772403088-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Ll7689IDnKLtjpgnzVq%2F-MPiWaCieyxA27KKzKEE%2F-MPi_EbdRJbC2u1GFqr3%2Fimage.png?alt=media\&token=075fa826-4e78-4353-ba04-6ef8a7919de2)


# QIWI

Приём платежей через QIWI p2p

Заходим на <https://p2p.qiwi.com/>, входим в аккаунт или регистрируемся.

Переходим в раздел API, прокручиваем вниз до Аутентификационные данные

![qiwi p2p](https://3772403088-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Ll7689IDnKLtjpgnzVq%2Fuploads%2FRjQHFmRZUcPEL26y7JJ0%2Fimage.png?alt=media\&token=380c2cd4-f53e-4653-9d47-5f1ffb3179e0)

Создаём новую пару ключей:

![qiwi p2p](https://3772403088-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Ll7689IDnKLtjpgnzVq%2Fuploads%2FvyoqaTsW0yyq0NyjQZNS%2Fimage.png?alt=media\&token=e63ce6fc-566a-4f3b-bf89-f1efec910abf)

Ставим галку Использовать для серверных уведомлений

![qiwi p2p](https://3772403088-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Ll7689IDnKLtjpgnzVq%2Fuploads%2Fh5bQxTKSkNNVSa24RCEZ%2Fimage.png?alt=media\&token=7f7ae474-f673-444c-9734-72ccfa41463d)

URL уведомлений - <https://api.botboom.ru/money/qiwip2p>

Нажимаем Создать. Полученный секретный ключ копируем в настройки платёжных систем Botboom:

![](https://3772403088-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Ll7689IDnKLtjpgnzVq%2Fuploads%2F2u0YqSGqlr7ob3tMxPxN%2Fimage.png?alt=media\&token=ee83289f-ce89-42ae-9840-2c4747c7c170)


# Короткие ссылки

Short URL

Короткие ссылки в botboom предназначены для того чтобы упростить вход пользователя в бота и отслеживать статистику привлечения.

Ссылка может вести на сторонний ресурс в Интернет или на элемент в боте. Для вывода конкретного элемента - товара, раздела или голосования, совместно с **Ссылками** используется раздел **Диалоги.**&#x20;

Ссылки имеют вид: <https://btbm.ru/ХХХХХХХ>. При переходе по ссылке срабатывает окно с переадресацией на бота или Интернет адрес.&#x20;

Реакция бота на ссылку реализуется за счет передачи в бота ключевого слова на которое среагируют **Диалоги**. Для Телеграмм, текст передаваемый боту по ссылке может содержать только латинские буквы и цифры. &#x20;

&#x20;Например, для создания короткой ссылки на определённый товар:

1. Создаём диалог в котором *napoleon* - это слово на которое будет реагировать система **Диалогов**, а *Наполеон* - имя товара(точное имя из каталога). Обновляем **Диалоги** в боте.

![](https://3772403088-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Ll7689IDnKLtjpgnzVq%2F-LzLsEXKf-GCJiqPje46%2F-LzLze3HiFsDbgVoxArg%2Fimg-2020-01-24-12-59-42.png?alt=media\&token=6f34eb8a-48b1-41da-919a-c420b44de056)

2\. Переходим в **Короткие ссылки,** создаём ссылку с названием *Наполеон, Инстаграмм* и "Целью ссылки" - текст *napoleon* - тот что мы задали в диалогах. Слово Инстаграмм здесь для того, чтобы потом идентифицировать и считать переходы из Инстаграмм. Аналогично можно сделать ссылки для разных каналов привлечения и анализировать их эффективность.

![](https://3772403088-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Ll7689IDnKLtjpgnzVq%2F-LzLsEXKf-GCJiqPje46%2F-LzM-tSNoPEiEZVJF_Te%2Fimg-2020-01-24-13-02-15.png?alt=media\&token=157d4f28-cc60-4aeb-a129-27ca8346d322)

После сохранения ссылка сразу готова к работе. Адрес ссылки Вы увидите в таблице статистики переходов.&#x20;

Также, Вы можете сохранить QR код ссылки и размещать его в оффлайн.

Количество переходов по созданной ссылке отображается в списке на вкладке Управление, а статистику по источникам переходов(где нажимали на эту ссылку) Вы можете посмотреть на вкладке Статистика. Фраза "Ручной ввод/QR код/не определён" означает ручной ввод ссылки в строку браузера, считывание QR кода телефоном или пересылку ссылки в мессенджерах.

![](https://3772403088-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Ll7689IDnKLtjpgnzVq%2F-LzLsEXKf-GCJiqPje46%2F-LzM24G80YBSdWAur-mX%2Fimg-2020-01-24-13-12-32.png?alt=media\&token=c9ecbd55-fe17-4b50-8075-adfdae1f6759)


# Переменные

Работа с переменными

Практически во всех сообщениях системы применимы переменные:

**%user\_name%** - в текст вставляется полное имя пользователя бота

**%first\_name%** - только имя

**%user\_withlink%** - к имени будет добавлена ссылка на персональный чат

**%split%** - текст сообщения делится на части и отправляется пользователям отдельными сообщениями

**%img%** URL - при разделении текста сообщения отправить картинку размещенную по адресу URL. Строка должна содержать только переменную %img% и адрес картинки.&#x20;

Пример:&#x20;

%img% <https://botboom.ru/logo.png>

**%file%** URL - при разделении текста сообщения отправить файл размещенный по адресу URL. Строка должна содержать только переменную %file% и адрес файла.

**%tme\_link%** - показать пользователю его реферальную ссылку

#### В зависимости от диалога

В диалоге "Показать внутренний баланс магазина"

* %balance% показать список балансов&#x20;
* %lottery\_name% - показать список лотерей в которых участвует пользователь
* %lottery\_count% - список количества участий в лотереях


# Команды

Команды для управления командами Телеграм

Описание команд и видимости - <https://core.telegram.org/bots/api#botcommand>

Управление командами через бота:

* /get\_all\_commands - посмотреть все команды в области видимости default
* /get\_chat\_commands - посмотреть команды работающие в чатах (all\_group\_chats)
* /get\_bot\_commands - посмотреть команды работающие в ботах (all\_private\_chats)
* /remove\_chat\_commands - удалить все команды работающие в чатах &#x20;
* /remove\_bot\_commands - удалить все команды работающие в ботах &#x20;
* /remove\_all\_commands - удалить все команды в области видимости default
* /add\_command - добавить команду в область видимости default. \
  Формат команды: /add\_command command:description
* /add\_chat\_command - добавить команду работающую только в чатах.\
  Формат команды: /add\_chat\_command command:description
* /add\_bot\_command - добавить команду работающую только в ботах.\
  Формат команды: /add\_bot\_command command:description


# Цифровые товары


# Опции бота

Для цифровых товаров

Все опции Магазина действуют также и на цифровые товары.&#x20;

![](https://3772403088-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Ll7689IDnKLtjpgnzVq%2Fuploads%2FrJRhjYolsqPEUawbOyv1%2Fimage.png?alt=media\&token=18426704-698b-43b1-b28a-cda96430ef08)

Для цифровых товаров есть дополнительная опция - Показывать купленные цифровые товары. Значение по умолчанию - Да и в таком режиме все цифровые товары будут показываться в меню не зависимо от того покупал их когда-то клиент или нет. Если поставить в положение нет - то Цифровые товары когда-либо купленные клиентом не будут отображаться в Основном меню. Однако, в Сохранённых сообщениях, Диалогах эти товары будут выводиться.


# Опции товара

Если товар Цифровой

Для работы с товаром Каталога как Цифровым необходимо включить соответствующую опцию:

![Настройки Цифрового товара](https://3772403088-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Ll7689IDnKLtjpgnzVq%2Fuploads%2FzG2qR2CywRBsmnjs84D0%2Fimage.png?alt=media\&token=c064f675-ae0a-4272-9091-48f240b1fb79)

После того как пользователем бота будет отправлен заказ с Цифровым товаром, бот:

* сразу отправит товар покупателю если включена опция Отправлять сразу после размещения заказа
* или будет ожидать оплаты через подключенную платежную систему
* или будет ожидать нажатия кнопки подтверждения оплаты(или отправки) заказа Администратором в боте&#x20;

После одного из этих событий, пользователю бота будет отправлено:

* сообщение после подтверждения заказа. Если в сообщении есть переменная %key% - будет вставлен первый в списке кодов, после использования код будет удалён. \
  Если задано, к сообщению будет прикреплена кнопка для перехода по заданному URL.
* Если задано, будет оправлен pdf файл

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

{% hint style="info" %}
Текст на кнопках можно задать в меню Общие настройки->Кнопки
{% endhint %}


# Ссылки на бота

## Формирование ссылок на ботов для размещения в Интернет

Для Телеграм ссылка имеет вид [https://t.me/botboom\_bot/?start=showbotscat](https://botboom.ru/tme/?botboom_bot\&start=showbotscat), где botboom\_bot имя Вашего бота заданное через BotFather. Конструкция start=showbotscat означает что после открытия бота в Телеграм и нажатии кнопки Запустить, в бот передастся слово showbotscat. В Телеграмм нельзя передать слово на Русском языке.&#x20;

Этот функционал можно использовать для показа пользователю сразу определённой категории, товара или, специфического приветствия - настройте в Диалогах соответствующий ответ на заданное после start слово.

Если Вы хотите чтобы после нажатия Запустить в боте не выдавалось стартовое сообщение - то передать ключевое слово для Диалогов можно поставив в начале ключевого слова две буквы - "tx". Ссылка привет вид:  [https://t.me/botboom\_bot/?start=txshowbotscat](https://t.me/?botboom_bot\&start=showbotscat). Именно так - без пробелов, спец символов и т.п.

### Именование ссылок и метки для пользователей

Ссылку можно сделать именованной - тогда в списке пользователей будет отображаться по какой ссылке он попал в бота. Для этого к ссылке на бота надо добавить конструкцию с ключевыми символами "ln".&#x20;

Например: добавляем ссылку с именем "yandex" - [https://t.me/botboom\_bot/?start=lnyandex](https://t.me/?botboom_bot\&start=lnyandex). И, если хотим вместе с ключевым словом - то соединяем всё знаком "-": <https://t.me/botboom_bot/?start=txshowbotscat-lnyandex>.

Также, имя ссылки автоматически добавляется как метка к Пользователю.

{% hint style="info" %}
Далее, ссылку можно разместить на сайте в исходном виде, укоротить её - например через bit.ly или создать QR код (<http://qrcoder.ru>) для размещения на печатной продукции.
{% endhint %}


# Опрос по продукту

Получение обратной связи через Телеграмм бота

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

Итак, задача:

1. определить понравился продукт или нет
2. получить от клиентов варианты улучшения
3. оповестить о других новинках
4. получить постоянный контакт покупателя для дальнейшего взаимодействия

Шаги для решения:

1. регистрация бота через botfather, регистрация в botboom.ru
2. создание приветственного сообщения и кнопки с информацией о боте
3. создание опросов: нравится или нет, чем улучшить
4. подготовка мотивационного сообщения(промокод или иной бонус)
5. создание ссылок и QR кодов для публикации
6. просмотр результатов

Пример того что получим в итоге можно посмотреть по ссылке: <https://botboom.ru/tme/?botboomtest8_bot&start=opros>.

#### Погнали!

### Регистрация бота через botfather, регистрация в botboom.ru

Открываем Телеграмм клиент, в поиск вводим @botfather (или откройте по ссылке: [@botfather](https://botboom.ru/tme/?botfather)), жмём Запустить или start. Перед вами откроется полный список команд для управления BotFather: создание и настройка ботов.

![регистрация бота у botfather](https://3772403088-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Ll7689IDnKLtjpgnzVq%2F-Ll7TinyFTpecyAVMh0x%2F-Ll7UgIUW_Ym27R-AAI_%2Fimage.png?alt=media\&token=8b449e93-7605-4cdf-9278-41bab3157532)

Отправляем команду /newbot, вводим имя бота - так он будет отображаться в списке контактов. Следующий вопрос botFather - имя бота по которому его смогут найти - оно должно быть уникальным во всём Телеграмм и заканчиваться на bot.

Как подберёте свободное имя - botFather пришлёт сообщение об удачной регистрации и самое главное - токен - набор символов необходимый для подключения бота:

`Use this token to access the HTTP API:`\
`123456789:AAEdeHEUfLs1yQtLplwtcZcKXXXXX-XXXXX`

Далее Вы можете установить описание бота, фото профиля и т.д. Вернуть список команд можно отправив боту /help. Копируем строку с токеном - он понадобится нам на следующем шаге.

Переходим на сайт платформы [botBoom.ru](https://botboom.ru/), в верхнем меню Подключить, далее кнопка Зарегистрироваться. Бесплатно даётся 2 недели пользования сервисом - вполне достаточно для всех тестов.

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

После регистрации, Вы попадаете в панель управления ботом. Сейчас бот не создан - жмём Создать:

![подключение бота к botboom.ru](https://3772403088-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Ll7689IDnKLtjpgnzVq%2F-Ll7TinyFTpecyAVMh0x%2F-Ll7VEVBaEpK5lfzP4q4%2Fimage.png?alt=media\&token=122d766a-cee0-42cb-ab73-eaa928f92bce)

В появившуюся форму вводим скопированный ранее токен бота и адрес на который будут приходить заказы(если Вы воспользуетесь функционалом интернет магазина в боте).

Система стартует бота, и Вас уже есть ссылка для открытия бота - можете открыть его в **Телеграмм** - Вы увидите 3 кнопки по умолчанию и на все сообщения бот будет отвечать заданным по умолчанию сообщением *"Не понял Вас"*.

### Создание приветственного сообщения и кнопки с информацией о боте

Сразу идём в настройки Телеграмм бота и заполняем своим текстом поля Приветственное сообщение и Сообщение по кнопке Помощь.

![задание основных сообщений бота](https://3772403088-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Ll7689IDnKLtjpgnzVq%2F-Ll7TinyFTpecyAVMh0x%2F-Ll7VvhypCbydjYJ-TZJ%2Fimage.png?alt=media\&token=5a7f5976-e063-4be8-b08c-4c1150ce598b)

Жмём кнопку Сохранить и активировать, проверяем в боте - стартовое сообщение можно увидеть отправив боту команду /start, Помощь - по кнопке помощь. Вид нижнего меню мы поменяем позже, когда будет что там разместить.

### **Создание опросов**

Создаём первый опрос - пункт меню Голосования, кнопка Добавить. Вводим название опроса(используется только в административном интерфейсе) и текст вопроса: Мы выпустили новый супер мега бургер 🍔 с клиновым сиропом 🍁 и мясом северного оленя 🦌. Как он Вам? Ниже, плюсик, добавляем варианты ответа. После нажатия, появляется кнопка - жмём на неё, это будущий ваиант ответа. Вводим 👍Супер👍, жмём сохранить. Аналогично создаём вари**а**нты 💩Фуфууу💩 и 50/50.

![настраиваем опрос в боте](https://3772403088-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Ll7689IDnKLtjpgnzVq%2F-Ll7TinyFTpecyAVMh0x%2F-Ll7WE7mz5UFb7xNfJ61%2Fimage.png?alt=media\&token=9f9cab01-50a4-484e-8b0c-7d699101cc21)

Здесь нам ещё важен переключатель Разрешить отвечать не 1 раз - если переставить в Да, то пользователи бота смогут ответить на опрос несколько раз.

Сохраняем и активируем.

Аналогичным образом добавляем второй опрос: \
Имя: чем улучшить?\
Текст: Мы хотим сделать для Вас самый лучший бургер, чем нам его улучшить?\
Варианты: Больше мяса, Больше сыра, Остроты, Ниже цену

Сохраняем и активируем. Теперь нам надо скопировать идентификатор второго опроса для организации цепочки - выделяем, копируем в буфер обмена.

![связывание опросов в цепочку](https://3772403088-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Ll7689IDnKLtjpgnzVq%2F-Ll7TinyFTpecyAVMh0x%2F-Ll7WP19qY91TaZYlr15%2Fimage.png?alt=media\&token=ec4b6c22-86ac-42c5-9997-9d06a7b7d174)

Теперь выбираем в списке опросов опрос "Как Вам?" и в настройках справа, в пункте "Показать после ответа", из списка выбираем Голосование, а в поле ввода вставляем скопированный ранее идентификатор.

![связывание опросов в цепочку](https://3772403088-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Ll7689IDnKLtjpgnzVq%2F-Ll7TinyFTpecyAVMh0x%2F-Ll7WWqEtUm3sesWMFHe%2Fimage.png?alt=media\&token=80e069ff-8663-4256-a245-a51a26e61d73)

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

### **Подготовка мотивационного сообщения(промокод или иной бонус)**

Для мотивации пользователя пройти опрос мы должны ему что-то выдать по итогам прохождения. Пусть это будет некий промокод на оффлайн покупку.

Сделаем это сообщение через "скрытый товар" - он не отображается в основном меню. Открываем Каталог, создаём элемент в разделе "Скрытый", в настройках задаём текст о промокоде.

![создание скрытого элемента](https://3772403088-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Ll7689IDnKLtjpgnzVq%2F-Ll7TinyFTpecyAVMh0x%2F-Ll7Wni_XbgzXQqLwS8x%2Fimage.png?alt=media\&token=7e2296ce-4927-4424-8827-a26a11711ec0)

Для показа этого элемента после опроса возвращаемся в Голосования и ставим настройку отображения Товара после голосования. Текст должен точно совпадать с именем элемента каталога(надпись на кнопке).

![связывание опроса и сообщения](https://3772403088-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Ll7689IDnKLtjpgnzVq%2F-Ll7TinyFTpecyAVMh0x%2F-Ll7WxAbEPTlB9HeRGja%2Fimage.png?alt=media\&token=d96bba11-a59b-4168-8c20-f9b01f3e2198)

### **Создание ссылок и QR кодов для публикации**

Теперь нам надо подготовить ссылки для размещения в онлайн и оффлайн. Система создания ссылок описано в документации - [тут](https://api.botboom.ru/www/howto.html#using).

Для Телеграмм ссылка имеет вид <https://botboom.ru/tme/?botboom\\_bot\\&start=showbotscat>, где botboom\_bot имя Вашего бота заданное через BotFather. Конструкция start=showbotscat означает что после открытия бота в Телеграмм и нажатии кнопки Запустить, в бот передастся слово showbotscat. В Телеграмм нельзя передать слово на Русском языке. Этот функционал можно использовать для показа пользователю сразу определённой категории, товара или, специфического приветствия - настройте в Диалогах соответствующий ответ на заданное после start слово.\
Т.е. для старта опроса нам еще надо создать запускающий Диалог(сначала скопируйте идентификатор первого вопроса в буфер обмена): \
Текст в сообщении: opros\
Действие: Голосование\
Текст: идентификатор голосования\
Таким образом, получаем ссылку вида: <https://botboom.ru/tme/?botboomtest8_bot&start=opros> (это действующая ссылка на демо бота, можете посмотреть результат работ по этой инструкции)

Теперь можно эту ссылку немного облагородить используя "укорачиватели" - например [bit.ly](https://bitly.com/) и сделать QR код для размещения на оффлайновой рекламной продукции - <http://qrcoder.ru/>

### **Просмотр результатов**

Результаты ответов можно посмотреть на странице голосований, выбрав соответствующее голосование:

![просмотр результатов голосования](https://3772403088-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Ll7689IDnKLtjpgnzVq%2F-Ll7TinyFTpecyAVMh0x%2F-Ll7XI9qSKLB5saywvxT%2Fimage.png?alt=media\&token=e60793c3-312f-4bc6-8072-0760b7a3f417)


# История заказов

Как дать возможность покупателю просмотреть и повторить свои заказы

Для добавления возможности просмотра истории заказов их повторения пользователем:

1. Заходим в Настройки -> Телеграм бот -> Нижнее меню. Добавляем кнопку в нужное место, называем Мои заказы:

![добавили кнопку](https://3772403088-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Ll7689IDnKLtjpgnzVq%2F-LnWzqSOeOdpWkfkPyF8%2F-LnX0ACsxIiEACB33GMT%2Fimage.png?alt=media\&token=df6e8664-e923-4697-a729-49de651c282f)

2\. ОК, Сохраняем и активируем, идём в Диалоги. &#x20;

Создаём диалог на слово "заказы", действие - История заказов, вводим текст показываемый перед показом заказов.

![создание диалога](https://3772403088-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Ll7689IDnKLtjpgnzVq%2F-LnWzqSOeOdpWkfkPyF8%2F-LnX1NG99LYHkUwaiYnk%2Fimage.png?alt=media\&token=bb4f2d79-c58d-465d-8dd0-2a6a4445327a)

3\. Жмём Создать как новый диалог, Обновить диалоги в боте.&#x20;

Профит :)


# Ссылки

Создание раздела с ссылками и вывод его в нижнем меню

##

Для подготовки, из **Меню бота,** создаём раздел с именем, например, *Ссылки* и ставим родительским для него раздел с именем *Скрытый.*

![новый раздел](https://3772403088-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Ll7689IDnKLtjpgnzVq%2F-MZSXGr-QMqGC668uS3a%2F-MZSY074XPLGBtM6kPgH%2Fimg-2021-04-29-15-04-26.png?alt=media\&token=547f162f-9bf6-494e-be16-b40543a597af)

В этот раздел будем добавлять ссылки на сторонние ресурсы. Родительским не обязательно должен быть *Скрытый* раздел, но тогда он будет отображаться в структуре меню.

Теперь, из **Меню бота** добавляем элемент типа *Ссылка* в созданный ранее раздел.

![новый элемент меню](https://3772403088-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Ll7689IDnKLtjpgnzVq%2F-MZSXGr-QMqGC668uS3a%2F-MZSYxo9RGGTohWfVf9l%2Fimg-2021-04-29-15-05-16.png?alt=media\&token=4c42f842-49fa-4288-8762-96b6d21010ed)

В открывшейся форме задаём настройки: *Родитель* - *Ссылки*, **Имя элемента** - оно будет отображаться на кнопке, и в поле ввода адрес ссылки включая http\:// или https\://.

![создание элемента - ссылки](https://3772403088-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Ll7689IDnKLtjpgnzVq%2F-MZSXGr-QMqGC668uS3a%2F-MZSZitC4TtcKAlY8ENi%2Fimg-2021-04-29-15-06-10.png?alt=media\&token=0e465d01-3048-4292-b957-c3fae53f3938)

Теперь мы имеем готовый раздел с кнопками - ссылками.&#x20;

Для того чтобы его отобразить в нижнем меню, необходимо воспользоваться функционалом подсистемы **Диалоги**.&#x20;

Создаём кнопку с нужным текстом и типом *Диалог*:

![кнопка-диалог в нижнем меню](https://3772403088-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Ll7689IDnKLtjpgnzVq%2F-MZSXGr-QMqGC668uS3a%2F-MZS_H-MZNyQJAbKGxGQ%2Fimg-2021-04-29-15-06-51.png?alt=media\&token=b0875048-f799-423d-bd3a-68ad7b676bda)

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

![новый диалог](https://3772403088-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Ll7689IDnKLtjpgnzVq%2F-MZSXGr-QMqGC668uS3a%2F-MZS_dp8pOvOBfExItjd%2Fimg-2021-04-29-15-07-44.png?alt=media\&token=6ba79532-9539-4aab-ac17-3ad3d6c0b257)

Готово.&#x20;

Логика работы бота в этом случае:

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


# Цифровой товар


# Вывод истории покупок

В случае цифрового товара возможны два варианта вывода истории покупок - Заказами и Списком товаров. В случае Заказов - выведутся последние 5 заказов клиента с кнопками повтора заказа. Если выводить Списком - то будет показан список всех товаров когда-либо купленных клиентом и к сообщению будут прикреплены кнопки просмотра купленных цифровых товаров из этого списка.

Для вывода любого варианта необходимо использовать Диалоги или Диалоги вместе с Сохранённым сообщением.\
\
1\. Создаём Диалог:

![Диалог вывода истории покупок](https://3772403088-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Ll7689IDnKLtjpgnzVq%2Fuploads%2Fqrff0pZwxUvcXPphAmVf%2Fimage.png?alt=media\&token=e9a9f881-34a9-498c-8fa5-522983714be5)

Тип Диалога должен быть выбран из списка и быть соответственно Список купленных товаров или История заказов.

2\. Если необходимо вывести кнопкой в нижнее меню - создаём кнопку с Точным совпадением с полем Текст заданным в Диалогах:

![Добавление кнопки меню](https://3772403088-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Ll7689IDnKLtjpgnzVq%2Fuploads%2FuCaUuIPwLTtus7RRxRKK%2Fimage.png?alt=media\&token=5867855b-2c67-4e14-9cd3-1c8ef0436212)

{% hint style="info" %}
Необходимость точного совпадение текста на кнопке и текста в диалоге задаётся параметром Точное совпадение в настройках Диалога. Если не задано Точное совпадение, то Диалог сработает если текст из настроек Диалога входит в текст на кнопке в меню.
{% endhint %}

3\. Можно вывести в основное меню бота через соответствующий элемент Основного меню:

&#x20;

![Вывод Диалога в Основном меню](https://3772403088-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Ll7689IDnKLtjpgnzVq%2Fuploads%2FcH5Dms75coehZpUhJXJi%2Fimage.png?alt=media\&token=b862b43b-5831-4ff6-8579-99333a06ca74)

4\. Можно добавить кнопкой в любом Сохранённом сообщении:

![Диалог в Сохранённом сообщении](https://3772403088-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Ll7689IDnKLtjpgnzVq%2Fuploads%2FPoyLnz33S52N52WpP8mQ%2Fimage.png?alt=media\&token=321c957d-96c0-44de-a6d8-1c922d5226b9)

5\. В итоге, будет выведен список покупок с кнопками вывода подробностей цифрового товара:

![Вывод подробностей Цифрового товара](https://3772403088-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Ll7689IDnKLtjpgnzVq%2Fuploads%2FVfM7lTR6lHMPmlQbUBQN%2Fimage.png?alt=media\&token=95b4b5a4-6f40-4a21-97a2-37ab1a8e5e50)

{% hint style="danger" %}
Внимание! Вывод кодов в подробностях цифрового товара не реализован!
{% endhint %}


# Каналы

Как добавить и работать с каналом

Для добавления канала в бот надо:

1. Добавить бота в канал. Он автоматически будет добавлен как администратор
2. Переслать боту любое из сообщений канала - после этого в боте будет создан пользователь-канал - ему можно отправлять сообщения точно также как и любому пользователю бота

{% hint style="info" %}
При рассылке сообщения **ВСЕМ** пользователям бота, сообщение также будет отправлено и в канал.&#x20;

Если Вы хотите избежать этого поведения - используйте метки пользователей. Присвойте метку например **Канал** подключенным каналам и при отправке сообщения ставьте отметку Отправить только тем у кого НЕТ меток: **Канал**.
{% endhint %}


# Проверка подписки

Как проверить подписан ли пользователь на канал

В боте можно проверить статус подписки пользователя на определённый канал.

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

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

Итак, по пунктам:

1. Создадим сообщения ответа пользователю в зависимости от того подписан он или нет:<br>

![сообщение если подписан](https://3772403088-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Ll7689IDnKLtjpgnzVq%2Fuploads%2Ft2rmWcDP5QNoAViHZGaP%2Fimage.png?alt=media\&token=046259ee-d565-4c5d-a1ad-d4835465ef28)

и аналогичное если не подписан.

2\. Создаём Диалог проверки:

![Диалог проверки подписки на канал](https://3772403088-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Ll7689IDnKLtjpgnzVq%2Fuploads%2F3xJljl4T2IclxHjx6bSA%2Fimage.png?alt=media\&token=c96ed64b-7e79-423c-986a-e742acadb4f2)

{% hint style="warning" %}
Важно! Имя канала ставим без символа @
{% endhint %}

Готово. Теперь этот Диалог можно повесить на любую кнопку верхнего и нижнего меню или в Сохраненное сообщение.&#x20;


# Telegram markdown

с оф. страницы Телеграм

**Formatting options**

The Bot API supports basic formatting for messages. You can use bold, italic, underlined and strikethrough text, as well as inline links and pre-formatted code in your bots' messages. Telegram clients will render them accordingly. You can use either markdown-style or HTML-style formatting.

Note that Telegram clients will display an **alert** to the user before opening an inline link ('Open this link?' together with the full URL).

Message entities can be nested, providing following restrictions are met:\
\- If two entities has common characters then one of them is fully contained inside another.\
\- *bold*, *italic*, *underline* and *strikethrough* entities can contain and to be contained in any other entities, except *pre* and *code*.\
\- All other entities can't contain each other.

Links `tg://user?id=<user_id>` can be used to mention a user by their ID without using a username. Please note:

* These links will work **only** if they are used inside an inline link. For example, they will not work, when used in an inline keyboard button or in a message text.
* These mentions are only guaranteed to work if the user has contacted the bot in the past, has sent a callback query to the bot via inline button or is a member in the group where he was mentioned.

**MarkdownV2 style**

To use this mode, pass *MarkdownV2* in the *parse\_mode* field. Use the following syntax in your message:

````
*bold \*text*
_italic \*text_
__underline__
~strikethrough~
*bold _italic bold ~italic bold strikethrough~ __underline italic bold___ bold*
[inline URL](http://www.example.com/)
[inline mention of a user](tg://user?id=123456789)
`inline fixed-width code`
```
pre-formatted fixed-width code block
```
```python
pre-formatted fixed-width code block written in the Python programming language
```
````

Please note:

* Any character with code between 1 and 126 inclusively can be escaped anywhere with a preceding '\\' character, in which case it is treated as an ordinary character and not a part of the markup.
* Inside `pre` and `code` entities, all '\`' and '\\' characters must be escaped with a preceding '\\' character.
* Inside `(...)` part of inline link definition, all ')' and '\\' must be escaped with a preceding '\\' character.
* In all other places characters '\_', '\*', '\[', ']', '(', ')', '\~', '\`', '>', '#', '+', '-', '=', '|', '{', '}', '.', '!' must be escaped with the preceding character '\\'.
* In case of ambiguity between `italic` and `underline` entities `__` is always greadily treated from left to right as beginning or end of `underline` entity, so instead of `___italic underline___` use `___italic underline_\r__`, where `\r` is a character with code 13, which will be ignored.

**HTML style**

To use this mode, pass *HTML* in the *parse\_mode* field. The following tags are currently supported:

```
<b>bold</b>, <strong>bold</strong>
<i>italic</i>, <em>italic</em>
<u>underline</u>, <ins>underline</ins>
<s>strikethrough</s>, <strike>strikethrough</strike>, <del>strikethrough</del>
<b>bold <i>italic bold <s>italic bold strikethrough</s> <u>underline italic bold</u></i> bold</b>
<a href="http://www.example.com/">inline URL</a>
<a href="tg://user?id=123456789">inline mention of a user</a>
<code>inline fixed-width code</code>
<pre>pre-formatted fixed-width code block</pre>
<pre><code class="language-python">pre-formatted fixed-width code block written in the Python programming language</code></pre>
```

Please note:

* Only the tags mentioned above are currently supported.
* All `<`, `>` and `&` symbols that are not a part of a tag or an HTML entity must be replaced with the corresponding HTML entities (`<` with `&lt;`, `>` with `&gt;` and `&` with `&amp;`).
* All numerical HTML entities are supported.
* The API currently supports only the following named HTML entities: `&lt;`, `&gt;`, `&amp;` and `&quot;`.
* Use nested `pre` and `code` tags, to define programming language for `pre` entity.
* Programming language can't be specified for standalone `code` tags.

**Markdown style**

This is a legacy mode, retained for backward compatibility. To use this mode, pass *Markdown* in the *parse\_mode* field. Use the following syntax in your message:

````
*bold text*
_italic text_
[inline URL](http://www.example.com/)
[inline mention of a user](tg://user?id=123456789)
`inline fixed-width code`
```
pre-formatted fixed-width code block
```
```python
pre-formatted fixed-width code block written in the Python programming language
```
````

Please note:

* Entities must not be nested, use parse mode [MarkdownV2](https://core.telegram.org/bots/api#markdownv2-style) instead.
* There is no way to specify underline and strikethrough entities, use parse mode [MarkdownV2](https://core.telegram.org/bots/api#markdownv2-style) instead.
* To escape characters '\_', '\*', '\`', '\[' outside of an entity, prepend the characters '\\' before them.
* Escaping inside entities is not allowed, so entity must be closed first and reopened again: use `_snake_\__case_` for italic `snake_case` and `*2*\**2=4*` for bold `2*2=4`.


# Команды

Фиксированные команды в боте

Есть ряд команд которые Вы не можете поменять, но можете использовать для управления некоторыми функциями бота. Команды доступны только администраторам и менеджерам.

* #### Общее

  /removeme - удалить себя из пользователей. Совсем. После перезапуска бота - Вы для него новый человек.

  /clearkeyboard - удалить у себя нижнюю клавиатуру
* #### В Лотереях

  /lotteryeslist - список запущенных лотерей и их участники

  /getlotterycode 5 - сгенерировать 5 кодов для последней запущенной лотереи

  /removefromlottery 12345678 - удалить пользователя с chatId 12345678 из всех запущенных лотерей

####

####


# FAQ

Часто задаваемые вопросы

## Как получать сообщения в боте?

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

1. Задать пароль администратора в интерфейсе управления в меню ***Общие настройки/Общие:***

![задать пароль администратора](https://3772403088-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-Ll7689IDnKLtjpgnzVq%2F-MNY_3mKH2i8jwb1pYkD%2F-MNYa_Tgtx4Vm3AskwnN%2Fimage.png?alt=media\&token=53a947ce-d077-4c1e-81c5-5448ad1dda5f)

2\. В боте, отправить ему текст:&#x20;

{% hint style="info" %}
/auth adminPassword
{% endhint %}

Для отмены авторизации достаточно отправить боту текст:

{% hint style="info" %}
/deauth
{% endhint %}


