- Платформа PARTS SOFT /
- Возможности /
- Подключение Telegram-бота для клиентов
Подключение Telegram-бота для клиентов
Получать сообщения о движении заказов, а также о пополнении счета статуса ваши клиенты теперь смогут в Telegram. Для настройки отправки уведомлений вам нужно будет создать чат-бота и подключить его к боту PARTS SOFT для клиентов.
Подключение бота для менеджеров описано в данной статье.
Далее мы расскажем, как подключиться к нашему боту для клиентов и пользоваться всеми его возможностями.
Подключение бота для клиентов
Для настройки уведомлений клиентам и менеджерам используются разные боты. Для отправки сообщений клиентов важно создать отдельного и подключать именно его.
Создание бота в Telegram
ШАГ 1. Зайдите в бот @BotFather и нажмите Запустить.
ШАГ 2. Отправляем команду /newbot
.
ШАГ 3. Выберите и введите имя бота, а затем — его @username.
Username должен обязательно заканчиваться на bot
. Например, zap_parts_bot.
ШАГ 4. Скопируйте себе:
- ссылку на бота;
- токен, он нужен будет для подключения бота на стороне системы PARTS SOFT.
Если вы вдруг потеряете токен, его можно легко узнать. Для этого перейдите к боту @BotFather и введите команду /token
.
Подключение к боту PARTS SOFT для клиентов
Важно, чтобы у вас на сайте был установлен SSL-сертификат и в Сайт → Общие настройки стояла галочка Протокол httpS в клиентской части. Иначе клиенты не смогут использовать вашего бота.
ШАГ 1. Перейдите в раздел админпанели Служебные → SMS и мессенджеры → Сервисы и нажмите иконку Telegram. Во всплывающем окне подтвердите подключение сервиса.
ШАГ 2. На странице настройки сервиса:
- В поле API ключ (1) укажите токен, полученный в Telegram.
- В поле Регион (2) выберите регион, к которому нужно привязать бота. Если не указывать, то он будет доступен для всех из списка.
- В поле Приоритет (3) установите уровень приоритета для сервиса. При значении 1, система будет пытаться отправить сообщение через Telegram, а затем — через подключенные SMS сервисы, если для них настроены соответствующие значения приоритета 2, 3 и т.д.
Если для оповещений у вас подключен и активен Универсальный сервис, то система в первую очередь будет пытаться отправить сообщение через него, а уже после через другие сервисы, согласно заданным уровням приоритета.
- Включите галочку Активен (4).
Для завершения настройки нажмите Сохранить.
Предоставление клиентам доступа к боту
Чтобы клиенты смогли подписаться на вашего бота и получать от него уведомления, вы можете:
- разослать прямую ссылку на бота или разместить ее на сайте;
- разместить виджет подписки на странице "Спасибо за покупку";
- добавить в письмо о подтверждении заказа авторизационную ссылку на бота. Она содержит код для входа без идентификации по номеру;
- сгенерировать QR-код с зашифрованной прямой ссылкой.
Кроме того, подписаться на бота клиенты смогут и самостоятельно - из личного кабинета, где также размещены ссылки на бота.
Клиент, который не был подписан на бота, перейдя по ссылке увидит кнопку Запустить. После клика на кнопку он будет или сразу авторизован, если перешел по ссылке с кодом, или ему необходимо будет пройти идентификацию по номеру, если он перешел по прямой ссылке.
С помощью виджета
Страница "Спасибо за покупку" показывается у клиента после оформления заказа, если настроено перенаправление на нее в разделе админпанели Сайт → Настройки страницы поиска. Если перенаправление отключено, то вы можете активировать показ страницы следующим способом:
-
Перейдите на вкладку Настройки внешнего вида → Окошко корзины/ быстрый заказ.
-
В поле Действия после оформления заказа выберите вариант Перенаправить на страницу “Спасибо за покупку”.
Клиенты, которые не подписаны на бота, смогут увидеть на данной странице виджет со ссылками, если выполните следующие действия:
ШАГ 1. Перейдите в раздел админпанели Служебные → Шаблоны html и откройте шаблон Страница "Спасибо за покупку"
ШАГ 2. Добавьте в его текст после строки <div class="b-head">Спасибо за заказ!</div>
приведенный ниже код и нажимаем Сохранить:
{% unless current_customer.get_bot_client.activate %}
{% include 'notification_services/_bot_status.liquid'%}
{% endunless %}
Код проверяет подписан ли клиент на бота. Если да, то виджет на странице "Спасибо за покупку" показываться не будет. Если нет, клиент его увидит:
Приведенный код не поддерживается для страниц об успешном оформлении заказа, назначенных в разделе Сайт → Страницы.
По ссылке в письме
Чтобы клиент, который не подписан на бота, в письме о подтверждении заказа получал авторизационную ссылку (для входа без аутентификации по номеру):
ШАГ 1. Перейдите в раздел админпанели Служебные → Шаблоны html и откройте шаблон Подтверждение заказа
ШАГ 2. В текст шаблона после строки Спасибо за ваш заказ
добавьте приведенный ниже код и нажимаем Сохранить:
{% if order.customer.get_bot_client != blank %}
{% unless order.customer.get_bot_client.activate %}
<br>
<a href="{{order.customer.get_bot_client.authorize_url}}">Получайте уведомления в Telegram</a>
<br>
{% endunless %}
{% endif %}
Здесь сначала проверяется подключен ли бот (пункт (4) на фото «Настройки подключения к боту PARTS SOFT»), а затем подписан ли клиент на него. В случае, когда бот не подключен и/или не активен у клиента, ссылка для подписки отображаться не будет. В противном случае клиент ее увидит:
Письма будут отправляться клиенту только в том случае, если на странице редактирования его профиля в блоке Дополнительно стоит галочка Отправлять Email. Кроме того, для отправки писем в разделе админпанели Служебные → Настройки email должна быть создана роль Отправка уведомлений.
С помощью QR кода
QR код — это сгенерированный штрихкод, который состоит из черно-белых блоков и позволяет кодировать символы. Зашифрованную информацию можно распознать при помощи камеры смартфона или планшета. Достаточно просто навести камеру на код.
Для создания QR кодов существует много различных сервисов. В нашем примере мы использовали https://free-qr.com/.
Вставьте ссылку в поле Сайт (1) и нажмите на кнопку Сгенерировать QR код (2). Справа появится ваш уникальный QR код.
Полученное изображение вы можете распечатать (3), чтобы повесить на видном месте в помещении своего магазина.
В личном кабинете (клиентская часть)
В личном кабинете клиенту нужно будет перейти в раздел TelegramBot:
На открывшейся странице он сможет:
- Скопировать (1) ссылку на бота. Ее можно открыть в браузере или сразу в приложении Telegram.
Ссылка содержит уникальный код идентификации клиента (для входа без проверки номера). Она предназначена только для его личного пользования. Ее нельзя передавать для входа третьим лицам.
- Перейти к боту по ссылке (2).
- Отсканировать QR код с помощью камеры смартфона, чтобы перейти к боту по ссылке (3).
- Отключить бота (4), чтобы не получать уведомления. Кнопка становится доступна после активации чат-бота по ссылке.
Также на данную страницу клиент сможет попасть с помощью виджета (кнопка Уведомления):
Авторизация и использование бота
Для использования бота клиенту нужно будет авторизоваться. Для этого требуется:
ШАГ 1. Нажать кнопку Запустить:
ШАГ 2. Если бот попросит отправить в Telegram номер телефона, необходимо будет нажать на кнопку Отправить номер или ввести команду /start
.
Для успешной аутентификации требуется, чтобы номер из профиля в системе совпадал с номером, указанным в аккаунте Telegram. Если они будут отличаться, то авторизоваться не получится. В этом случае можно будет подключиться только по ссылке из личного кабинета.
ШАГ 3. Поскольку наш Telegram-бот для клиентов построен по технологии WebApp-приложения, то при выборе каждого пункта меню будет открываться соответствующая страница сайта — в дополнительном окне:
Уведомления от бота
Бот отправляет клиентам уведомления о следующих событиях:
- о переходе заказа в какой-то статус, если в его настройках указано сообщение и стоит галочка Отправлять SMS уведомления (см. пример настройки для статуса "В работе");
- о подтверждении заказа, если в меню Служебные → Шаблоны html настроен шаблон Смс уведомление подтверждение заказа;
- о собранном заказе, если в меню Служебные → Шаблоны html настроен шаблон Заказ собран;
- о пополнении баланса, если в меню Служебные → Шаблоны html настроен шаблон Уведомление о зачислении на баланс;
При необходимости отправку уведомлений о пополнении баланса можно отключить для всех клиентов. Для этого в разделе Сайт → Общие настройки активируйте опцию Отключить уведомление при пополнении баланса.
- и в других, если в меню Служебные → Шаблоны html настроены соответствующие шаблоны в блоке Шаблоны SMS.
В сообщении для Telegram-бота можно:
- использовать конструкции языка Liquid и HTML-теги <b> (жирный шрифт) и <i> (курсив);
- добавить кнопку оплаты счета;
- выводить информацию о конкретном пункте выдачи, если заказ был оформлен на самовывоз.
Ниже рассмотрены примеры настройки уведомлений.
Пример 1. О принятом заказе (на основе шаблона SMS)
ШАГ 1. Переходим в раздел админпанели Служебные → Шаблоны html.
ШАГ 2. Выбираем шаблон Смс уведомление подтверждение заказа.
ШАГ 3. Изменяем текст сообщения на приведенный ниже и нажимаем Сохранить.
{% if notification_service_code == 'telegram' %}
<b>Ваш заказ</b> {{order.order_id}}принят. Дождитесь звонка от менеджера: {{order.customer.user.phone}}
{% else %}
Ваш заказ {{order.order_id}} принят. Дождитесь звонка от менеджера: {{order.customer.user.phone}}
{% endif %}
Сообщение до элемента {% else %}
будет использоваться в Telegram уведомлениях, а после — для SMS-рассылок. Выглядеть в чате оно будет так:
Пример 2. О смене статуса позиции и всего заказа
ШАГ 1. В разделе админпанели Справочники → Статусы заказов переходим к редактированию статуса "В работе" (кнопка с ручкой в его строке).
ШАГ 2. На странице его настройки находим блок Настройка уведомлений о смене статуса.
ШАГ 3. На вкладке Настройка SMS уведомлений о статусе позиции:
- устанавливаем галочку Отправлять SMS уведомления;
- в поле Текст уведомления добавляем приведенный ниже текст и нажимаем Сохранить.
{% if notification_service_code == 'telegram' %}
<b>Вы заказывали:</b>
<b>Позиция</b> → {{order_item.detail_name}} {{order_item.oem}} {{order_item.make_name}}
• новый статус → {{order_item.status.name}}
• заказанное кол. → {{order_item.qnt}}
• актуальное кол. → {{order_item.current_qnt}}
{% endif %}
ШАГ 4. На вкладке Настройка SMS уведомлений о статусе всего заказа:
- устанавливаем галочку Отправлять SMS уведомления;
- в поле Текст уведомления добавляем приведенный ниже текст и нажимаем Сохранить.
{% if notification_service_code == 'telegram' %}
<b>Данные по заказу:</b>
{% for item in order.order_items %}
<b>Позиция</b> → {{item.detail_name}} {{item.oem}} {{item.make_name}}
• новый статус → {{item.status.name}}
• заказанное кол. → {{item.qnt}}
• актуальное кол. → {{item.current_qnt}}
{% endfor %}
{% endif %}
Пример 3. Для статуса "Ожидает оплаты"
ШАГ 1. В разделе админпанели Справочники → Статусы заказов переходим к редактированию статуса "Ожидает оплаты" (кнопка с ручкой в его строке).
ШАГ 2. На странице его настройки находим блок Настройка уведомлений о смене статуса.
ШАГ 3. Переключаемся на вкладку Настройка SMS уведомлений о статусе всего заказа:
- устанавливаем галочку Отправлять SMS уведомления;
- в поле Текст уведомления добавляем текст Ваш заказ №{{order.order_id}} ожидает оплаты;
- включаем галочку Отправлять кнопку оплаты счета в Telegram, чтобы в сообщении отображалась кнопка оплаты счета.
ШАГ 4. Сохраняем изменения.
Доставленное сообщение будет выглядеть в чате так:
Пример 4. Для статуса "Пришло"
Для простоты предположим, что в нашей системе есть настроенные пункты выдачи, которые закреплены за типом доставки "Самовывоз" (см. описание блока Запрашивать данные в документации о настройке типов доставки). Для каждого из них вы указали:
- адрес и режим работы;
- координаты месторасположения (в полях Долгота и Широта), чтобы в сообщении бота показывалась карта.
ШАГ 1. В разделе админпанели Справочники → Типы доставки переходим к редактированию типа доставки "Самовывоз". На странице настройки его параметров включаем Отправлять контакты в TG, чтобы адрес пункта передавался в чат-бот.
ШАГ 2. В разделе админпанели Справочники → Статусы заказов переходим к редактированию статуса "Пришло" (кнопка с ручкой в его строке).
ШАГ 3. На странице его настройки находим блок Настройка уведомлений о смене статуса.
ШАГ 4. Переключаемся на вкладку Настройка SMS уведомлений о статусе всего заказа:
- устанавливаем галочку Отправлять SMS уведомления;
- в поле Текст уведомления добавляем текст Ваш заказ №{{order.order_id}} готов к выдаче;
- в поле Режим отправки адреса выбираем режим Если активировано в типе доставки.
ШАГ 5. Сохраняем изменения
Доставленное сообщение будет выглядеть в чате так: