Функції калькулятора для курсів
Реєстрація на курс
register_customer_on_course(tariff_id, email, email_notification, period, reregistration)
! tariff_id
обов’язковий параметр, ID тарифного плану. Ви можете скопіювати його в адресному рядку браузера в налаштуваннях тарифного плану.
обов’язковий параметр, електронна адреса клієнта. Ви можете вказати конкретне значення або змінну, у якій записано email клієнта.
email_notification
необов’язковий параметр, надсилає учневі лист про його реєстрацію на курс, якщо він увімкнений.
period
необов’язковий параметр, обмеження часу дії тарифного плану. Підтримуються такі формати дати: %d.%m.%Y %H:%M або %d.%m.%Y Приклад:
period = '15.08.2023 11:00'
reregistration
необов’язковий параметр зі значеннями True або False. Цей параметр не є обов’язковим і вказується, якщо потрібно повторно зареєструвати студентів на той самий курс і тарифний план.
purchase_price
необов’язковий параметр. Дає змогу вказати вартість курсу, якщо клієнт оплатив доступ до нього через бот. Якщо ви не вкажете його, буде використана вартість вказаного тарифного плану. Це стане в пригоді, якщо клієнт оплачує доступ до курсу через бот за іншою ціною, ніж вартість вказаного тарифного плану.
Приклад: register_customer_on_course(123, email, 1, "", True)
Щоб клієнти отримували листи, передайте 1 у параметр email_notification.
Якщо ви не надішлете 1, то листи клієнта не будуть отримані!
Як надати доступ до курсу через Telegram Web App?
Для цього вкажіть функцію в Block Calculator
access_course_from_webapp(text, button_label)
Під час використання функції учень входить у Telegram і отримує доступ до курсу. Для подальшого навчання учневі не потрібно вводити логін і пароль, оскільки авторизацію вже завершено.
Параметри функції:
text — це текст повідомлення, який отримає клієнт. Параметр можна вказати в змінній, записавши її в полі Calculator перед викликом функції, або вказати безпосередньо у функції в лапках.
button_label — це текст на кнопці Web App. Ви можете вказати параметр або в змінній, або безпосередньо у функції. У другому випадку параметр записується в лапках.
Це актуально ТІЛЬКИ для роботи з Telegram-ботом.
На скріншоті нижче показано приклад використання функції.
На першому кроці ми реєструємо клієнта на курс, потім використовуємо функцію access_course_com_webapp, щоб надати доступ до онлайн-продукту.
Результат виконання функції:

Ця кнопка відкриває сторінку з курсами/тарифами, які має учень.
Якщо клієнт не пов’язаний з обліковим записом учня, функція повертає 'client not attached to customer'.
Щоб створити таке зв’язування, потрібно просто записатися на курс через бот.

Як надати доступ до курсу через бот
register_customer_on_course()
Для цього вкажіть функцію в Block Calculator
register_customer_on_course(tariff_id, email, email_notification, period)
! tariff_id — ID тарифного плану. Ви можете скопіювати його в адресному рядку браузера в налаштуваннях тарифного плану.
email_notification — цей параметр надсилає учневі лист про його реєстрацію на курс, якщо він увімкнений.
! 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_tariff(tariff_id)
Для цього вкажіть функцію в Block Calculator has_customer_tariff(tariff_id, email)
! tariff_id — ID тарифного плану. Ви можете скопіювати його в адресному рядку браузера в налаштуваннях тарифного плану або в розділі «Тарифні плани».
email — необов’язковий параметр. Передайте цей параметр, щоб перевірити, чи записаний клієнт на курс із вказаною електронною адресою.
Після виконання функція повертає True або False.
Можливі відповіді функції у разі помилок:
wrong tariff_id — передано некоректне значення tariff_id
customer not found — користувач не зареєстрований як студент.
Як зареєструвати клієнта на платформі БЕЗ надання доступу до курсу
register_customer(email)
Для цього вкажіть функцію в Block Calculator register_customer(email)
електронна адреса клієнта.
Ви можете вказати змінну у функції або значення параметра. Щоб указати змінну, напишіть її назву без лапок, службових символів, решітки та фігурних дужок. Щоб указати конкретне значення, вкажіть електронну адресу клієнта в лапках.
Рекомендується призначати функцію змінній, щоб ви могли бачити результат її виконання і працювати з ним. Приклад на скріншоті нижче: перед знаком дорівнює вказано ім’я змінної, далі — функція і параметр у дужках.
Після успішного виконання функції відповідь буде записано в змінну: customer created
Як перевірити доступ до курсу та обмеження за часом?
Для цього вкажіть функцію в Block Calculator has_customer_tariff_with_date(tariff_id, email), щоб перевірити наявність доступу до курсу за email (повертає детальну відповідь про наявність доступу та часові обмеження).
Параметри функції:
! tariff_id — ID тарифного плану. Ви можете скопіювати його в адресному рядку браузера в налаштуваннях тарифного плану або в розділі «Тарифні плани».
email — необов’язковий параметр.
Відповідь буде такою:
студент записаний і є обмеження за часом доступу: Доступ є до 2023-09-28 22:00:00
студент записаний, обмежень немає: Доступ без обмеження за часом
студент не записаний: Немає доступу до цього тарифу
Можливі відповіді функції у разі помилок:
wrong tariff_id — передано некоректне значення tariff_id
customer not found — користувач не зареєстрований як студент.
Як видалити доступ до курсу студента через бот
del_customer_from_course(course_id, email)
Для цього вкажіть функцію в Block Calculator del_customer_from_course(course_id, email)
! tariff_id
ID тарифного плану
електронна адреса клієнта
Як перевірити, чи був студент на вебінарі
customer_was_on_translation()
Доступ до курсу потрібно надати в боті.
Для цього є функція register_customer_on_course() і access_course_from_webapp()
Щоб перевірити, чи був студент на вебінарі чи ні, вкажіть функцію в Block Calculator customer_was_on_translation(translation_guid, email, after_start_time)
! translation_guid - ID трансляції. Скопіюйте значення поля
Назва є в посиланні налаштувань трансляції
after_start_time - час початку трансляції у форматі: '2023-04-18 13:30:00'.
! email - електронна адреса студента
Зверніть увагу! Ім’я змінної може бути будь-яким, зручним і зрозумілим для вас. У разі помилки в написанні параметрів функції в змінну буде записано повідомлення: wrong translation_guid
У цьому випадку рекомендуємо перевірити параметри функції та протестувати їх ще раз. Щоб отримати значення тривалості перебування на вебінарі зі змінної в Calculator, можна скористатися функцією роботи з масивами та словниками. ссылка/ссылка масивами і словниками.
Приклад налаштувань у Block Calculator:
time_spent1 = answer2[0]['time_spent']
Як знайти ім’я студента, прив’язане до бота?
Бувають випадки, коли студенти можуть бути прив’язані до онлайн-чату особистого кабінету студента, а також ті, хто прив’язаний до месенджера і пише вашим кураторам через бот. Щоб коректно видавати іменні сертифікати про завершення курсу в боті й не шукати ім’я студента в списку, є функція:
get_customer_name() - повертає ім’я студента, пов’язаного з клієнтом.
Функція без параметрів.

Повертає ім’я студента, яке студент вказав під час реєстрації на курс, або ім’я студента з його особистого кабінету.
Останнє оновлення