- Як налаштувати WebinarGeek
- Як отримати список вебінарів через чат-бота
- Як зареєструватися на вебінар через чат-бота
- Як перевірити відвідуваність вебінару через чат-бота
- Як отримати broadcast_id за назвою вебінару, починаючи з вказаної дати та часу
Як налаштувати WebinarGeek
Щоб отримати токен, перейдіть до налаштувань облікового запису на WebinarGeek. Ви можете знайти його у верхньому правому куті екрана, і після натискання на слово Account відкриється випадаюче меню, де потрібно вибрати перший пункт:

Потім виберіть API в меню зліва

Після цього відкриється сторінка з API

Якщо ви не отримали ключ, зверніться до служби підтримки клієнтів і попросіть його.
Після отримання токена відкрийте Settings -> Project constants і вставте його у змінну webinargeek_token:

Як отримати список вебінарів через чат-бота
Щоб отримати список, достатньо викликати функцію webinargeek_get_webinar_list():

У результаті буде список вебінарів у такому форматі:
['{"id":1455034,"date":"11-05-2022 18:00","name":"Second webinar"}',
'{"id":1455046,"date":"11-05-2022 18:00","name":"My Webinar"}',
'{"id":1453081,"date":"04-05-2022 18:00","name":"My first webinar"}']
де
id - це ідентифікатор трансляції (broadcast_id), значення необхідне для всіх інших дій з цим
дата вебінару - дата та час цієї трансляції
name - назва вебінару
Якщо передати функції будь-який символ (найкраще вставити '1'), то функція покаже лише ті вебінари, які ще не завершилися, а якщо нічого не передавати, то вона також покаже завершені.
Як зареєструватися на вебінар через чат-бота
Для реєстрації потрібна функція webinargeek_get_webinar_list(broadcast_id, name, email), де
broadcast_id - ідентифікатор трансляції, на яку потрібно зареєструвати клієнта
name - ім'я клієнта, яке буде показано в чаті
email - електронна адреса, на яку прийде запрошення на вебінар з посиланням
Без цих параметрів неможливо зареєструвати клієнта через бота.
Приклад:
url = webinargeek_add_subscriber(1455046, 'John Smith', '[email protected]')

У результаті ця змінна міститиме посилання на вебінар, через яке користувачеві не потрібно буде реєструватися. Усі дані користувача встановлені в цій змінній.
Також після виконання функції до картки клієнта буде додано дві змінні:
webinargeek_broadcast_id - ідентифікатор трансляції, на яку зареєстровано користувача
webinargeek_email - електронна адреса, вказана під час реєстрації
Ці змінні стануть у нагоді для перевірки відвідуваності вебінару користувачем.
Як перевірити відвідуваність вебінару через чат-бота
Для перевірки відвідуваності вам знадобиться ця функція webinargeek_is_visitor(webinargeek_broadcast_id, webinargeek_email), де
webinargeek_broadcast_id - ідентифікатор трансляції, на яку зареєстровано користувача
webinargeek_email - електронна адреса, вказана під час реєстрації
watch_minimum - (необов'язковий параметр) мінімальна кількість хвилин, за якою функція визначає, чи зараховується відвідуваність як одна, чи ні
watch = webinargeek_is_visitor(webinargeek_broadcast_id, webinargeek_email)

У змінну буде вставлено відповідь:
- Якщо вебінар ще не завершився, то у відповідь надходить цей текст: "Webinar not ended yet";
- Якщо клієнт не дивився вебінар, то у відповідь надходить: "False";
- Якщо клієнт дивився вебінар і параметр watch_minimum не використовувався, то у відповідь надходить: "True";
Якщо параметр watch_minimum використовувався, то функція перевірить кількість часу, який клієнт дивився вебінар, і:- Якщо клієнт дивився менше, ніж встановлено мінімум, у відповідь надходить: "False";
- Якщо кількість часу, який клієнт дивився вебінар, дорівнює або перевищує вказану кількість, то у відповідь надходить: "True".
Як отримати broadcast_id за назвою вебінару, починаючи з вказаної дати та часу
Щоб отримати broadcast_id вказаного вебінару, потрібна функція webinargeek_search_broadcast_id() з такими параметрами:
webinar_list - сюди потрібно передати змінну, яка містить результат функції webinargeek_get_webinar_list()
webinar_name - назва вебінару, broadcast_id якого потрібно знайти
webinar_date - дата трансляції у форматі дд.мм.рррр. Також можна використовувати current_date
webinar_time - час трансляції у форматі гг:хв, де гг = години, хв = хвилини
Приклад:
webinar_list = webinargeek_get_webinar_list()
broadcast_id = webinargeek_search_broadcast_id(webinar_list, 'Second webinar', current_date-4, '18:00'

Тут ми намагаємося знайти ідентифікатор трансляції, яка відбувалася за 4 дні до поточної дати о 18:00 і називалася "Second webinar".
Якщо вебінар, що відповідає параметрам, був у списку, то функція повертає ідентифікатор знайденого вебінару в змінну broadcast_id.
Якщо такого вебінару не знайдено, то замість цього вставляється текст: "No webinar with these parameters".