Функции калькулятора для курсов

Регистрация на курсе

register_customer_on_course(tariff_id, email, email_notification, period)

Обязательные параметрыНеобязательные параметры

! tariff_id - идентификатор id тарифа. Скопировать можно в браузерной строке в настройках тарифа.

email_notification - этот параметр передает ученику на Email сообщение о его регистрации на курс, если он включен.

! email - адрес электронной почты клиента. Можно указать конкретное значение или переменную, в которой записан email клиента

period - ограничение по времени действия тарифа. Форматы даты поддерживаются такие: %d.%m.%Y %H:%M или %d.%m.%Y Пример:

period = '15.08.2023 11:00'

Для того чтобы клиенты получали письма необходимо передать 1 в параметре email_notification.

Если не передать 1, то письма клиента получать не будут!

Как выдать доступ к курсу через Web App Телеграмм?

Для этого укажите в Калькуляторе блока функцию

access_course_from_webapp(text, button_label) При использовании функции ученик проходит авторизацию в Telegram и получает доступ к курсу. Для дальнейшего обучения, ученику не надо вводить логин и пароль, так как авторизация уже пройдена.

Параметры функции:

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

button_label - текст на кнопке Web App Указать параметр можно, как в переменной, так и в самой функции. Во втором случае запить параметра производится в кавычках.

*Актуально ТОЛЬКО для работы с Telegram-ботом.

В скриншоте ниже показали пример использования функции. На первом шаге регистрируем клиента на курс, затем функцией access_course_from_webapp предоставляем доступ к онлайн-продукту.

Результат выполнения функции:

По этой кнопке открывается страница с курсами/тарифами, которые есть у ученика.

Если клиент не связан с аккаунтом ученика, то функция вернет 'client not attached to customer'.

Для создания такой связи просто нужно записать на курс через бота.

Как выдать доступ к курсу через бот register_customer_on_course()?

Для этого укажите в Калькуляторе блока функцию

register_customer_on_course(tariff_id, email, email_notification, period)

Обязательные параметрыНеобязательные параметры

! tariff_id - идентификатор id тарифа. Скопировать можно в браузерной строке в настройках тарифа.

email_notification - этот параметр передает ученику на Email сообщение о его регистрации на курс, если он включен.

! email - адрес электронной почты клиента. Можно указать конкретное значение или переменную, в которой записан email клиента

period - ограничение по времени действия тарифа. Форматы даты поддерживаются такие: %d.%m.%Y %H:%M или %d.%m.%Y Пример:

period = '15.08.2023 11:00'

Для того чтобы клиенты получали письма необходимо передать 1 в параметре email_notification.

Если не передать 1, то письма клиента получать не будут!

Присвойте переменной функцию.

После выполнения в переменной будет записан один из ответов:

customer is already on tariff - если тариф есть или доступ вручную закрыт

wrong_tariff_id - неверный id указан

tariff_added - тариф добавлен ученику

Примеры:

Как проверить наличие доступа к курсу has_customer_triff(tariff_id)?

Для этого укажите в Калькуляторе блока функцию has_customer_tariff(tariff_id, email)

Обязательные параметрыНеобязательные параметры

! tariff_id - идентификатор id тарифа. Скопировать можно в браузерной строке в настройках тарифа или в разделе Тарифы.

email - необязательный параметр. Передайте этот параметр, чтобы проверить записан ли клиент с указанным email на курс.

После выполнения функция возвращает True или False.

Возможные ответы функции при ошибках:

wrong tariff_id - передано неверное значение tariff_id

customer not found - пользователь не зарегистрирован как ученик.

Как зарегистрировать клиента на платформе БЕЗ выдачи доступа к курсу: register_customer(email)?

Для этого укажите в Калькуляторе блока функцию register_customer(email)

Параметры функцииОписание

! email

адрес электронной почты клиента.

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

Функции рекомендуется присвоить переменную, так вы увидите результат работы функции и сможете работать с ним. Пример в скриншоте ниже: до знака равенства задано имя переменной, после функция и параметр в круглых скобках.

После успешного выполнения функции в переменной будет записан ответ: customer created

Как проверить наличие доступа к курсу и ограничения по времени?

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

Параметры функции:

Обязательный параметрНеобязательный параметр

! tariff_id - идентификатор id тарифа. Скопировать можно в браузерной строке в настройках тарифа или в разделе Тарифы.

email - необязательный параметр.

В ответ придет:

  • ученик записан и есть ограничение по времени доступа: Has access until 2023-09-28 22:00:00

  • ученик записан, ограничений нет: Has access without time limit

  • ученик не записан: No access to this tariff

Возможные ответы функции при ошибках:

wrong tariff_id - передано неверное значение tariff_id

customer not found - пользователь не зарегистрирован как ученик.

Как удалить доступ к курсу для ученика через бот del_customer_course()

Для этого укажите в Калькуляторе блока функцию del_customer_from_course(course_id, email)

ПараметрыОписание

! tariff_id

идентификатор тарифа

! email

адрес электронной почты клиента

Идентификатор находится на карточке тарифа:

Как проверить, был ли ученик на вебинаре customer_was_on_translation()

Доступ к курсу должен быть выдан в боте.

Для это есть функция register_customer_on_course() и access_course_from_webapp()

Чтобы проверить был ученик на вебинаре или нет, укажите в Калькуляторе блока функцию customer_was_on_translation(translation_guid, email, after_start_time)

Обязательные параметрыНеобязательный параметр

! translation_guid - идентификатор трансляции. Скопируйте значение поля Название в ссылке в настройках трансляции.

after_start_time - время начала трансляции в формате: '2023-04-18 13:30:00'.

! email - адрес электронной почты Ученика

Пример: answer2 = customer_was_on_translation('ad654f52be33d55008e31ba9792140ab', 'test@mail.ru', '2023-04-18 13:30:00')

В переменную answer2 запишется результат выполнения функции. По значению этой переменной можно настраивать дальнейшую логику работы бота. Пример успешной проверки посещения вебинара:

Важно! Название переменной может быть любое удобное и понятное вам. В случае ошибки в написании параметров функции в переменную запишется сообщение: wrong translation_guid

В этом случае рекомендуем проверить параметры функции и протестировать повторно. Чтобы из переменной получить значение длительности пребывания на вебинаре в Калькуляторе можно использовать функцию работы с массивами и словарями.

Пример настройки в Калькуляторе блока:

time_spent1 = answer2[0]['time_spent']

Как запустить бота, если ученик открыл урок / сдал домашнее задание / закончил курс?

В Основных настройках курса включить Отправлять колбэк.

В этом случае на выбранные действия в диалог ученика в боте будут приходить уведомления (callback). Текст этих уведомлений можно использовать как условие в стрелках и/или в блоках с условием для дальнейшего движения ученика по боту.

Основные знания по работе с конструктором также подробно рассмотрены в бесплатном обучении от Salebot : https://salebot.pro/cs/repetitor_tema1

Видеоинструкция

00:00 | Создаем миникурсы с разными тарифами

00:52 | Создаем схему для регистрации нового ученика в Курсах(LMS системе)

07:00 | Функция регистрация БЕЗ выдачи доступа к курсу register_customer()

7:59 | Функция выдачи доступа к курсу через бот register_customer_on_course()

13:31 | Проверка регистрации в Курсах(как ученик) через сравнение переменной

15:23 | Функция проверки доступа к курсу has_customer_tariff()

Last updated