# WebinarGeek

* [Как настроить WebinarGeek](#how-to-set-up-webinargeek)&#x20;
* [Как получить список вебинаров через чат-бота](#how-to-get-the-list-of-webinars-through-the-chat-bot)&#x20;
* [Как зарегистрироваться на вебинар через чат-бота](#how-to-register-to-a-webinar-through-the-chat-bot)&#x20;
* [Как проверить посещаемость вебинара через чат-бота](#how-to-check-attendance-of-the-webinar-through-the-chat-bot)&#x20;
* [Как получить broadcast\_id по названию вебинара, начиная с указанной даты и времени](#how-to-get-broadcast_id-by-the-webinar-name-starting-with-a-specified-date-and-time)

## Как настроить WebinarGeek

Чтобы получить токен, перейдите в настройки аккаунта на [WebinarGeek](https://www.webinargeek.com). Его можно найти в правом верхнем углу экрана, и после нажатия на слово Account откроется выпадающее меню, где нужно выбрать первый пункт:

![](https://lh3.googleusercontent.com/Lee-ZykbxAuLcQxlMkBPc3Y6VnVWHMZsDYq2c9mQvo-Iz_Ap9zh7skq70L3KlUyek8ZidZLRZDkzSQS1V1lMqoHei9fMsf_yjYlsBCJv47xABGzkKgiW2UlQp7vesFmN9XYXiC_BeaIw0-ZjOw)

Затем выберите API в меню слева

![](https://lh3.googleusercontent.com/WC4vNQctjwbzAjivyHBf99vFi43H_Dw0RKndS132QP3KEeYtTligJLX6gEiUmnf700eOOtF3MHU1POLUlMlEUOWqe3uLPGB2G3EbyF8kpsHOu9eUKM847yOfGhYDRVcFrqCN4u0zxbB7aYPnyg)

После этого откроется страница с API

![](https://lh5.googleusercontent.com/ySUeCLhtqP-X_osv_Unl1nfwat53d7c9_4g_2riwm0e0kTnJurUy9Db0O8WJSK6bgyRq-8KLlt3Hx4C10qnqEEouYxAsQG6vddVIbFlPYC7-smm83UIvTlbqm8V5OjWZ6V9m-VTj_n_qTDiyxg)

{% hint style="info" %}
Если вы не получили ключ, вам нужно обратиться в службу поддержки и запросить его.
{% endhint %}

После того как вы получите токен, откройте **Настройки -> Константы проекта** и вставьте его в переменную **webinargeek\_token**:

![](https://lh4.googleusercontent.com/OMoRvM_wvtkp1GrtMUitICvW8X4oNZ_3ctBnIaS7QaE-GbeobFGDv-cy8Le6yA6trdiMecvi2G414KNO4qQwdWaC6Ya3nSilDxyDxPYhCma6nUUa0fZdL5sv4rVSCVuLZuhlmKV4fMAXJM314w)

## Как получить список вебинаров через чат-бота

Чтобы получить список, достаточно вызвать функцию **webinargeek\_get\_webinar\_list()**:

![](https://lh5.googleusercontent.com/zfjxdCkAhwXTJ8-PAWv4NkbCo84usAF9s8Es_iC1JYsMt5X0nXUlCedA7VO6s8vbJJBOtRz4U3u2SGjDmhdmQQEy0Jj7hILWRb5b6TUEacJJ-TZ0ChqrpoQw6y8y8De17z6QihBUJ_Td8SEwlg)

В результате будет список вебинаров в таком формате:

\['{"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** - это id трансляции (broadcast\_id), значение необходимо для всех остальных действий с этим \
**дата вебинара** - дата и время этой трансляции \
**name** - название вебинара

Если передать в функцию любой символ (лучше вставить '1'), то функция покажет только те вебинары, которые ещё не завершились, а если ничего не вставлять, то она также покажет и завершённые.

## Как зарегистрироваться на вебинар через чат-бота

Для регистрации нужна функция **webinargeek\_get\_webinar\_list(broadcast\_id, name, email)**, где

**broadcast\_id** - id трансляции, на которую нужно зарегистрировать клиента \
**name** - имя клиента, которое будет отображаться в чате \
**email** - адрес электронной почты, на который придёт приглашение на вебинар со ссылкой

Без этих параметров зарегистрировать клиента через бота нельзя.

**Пример:** \
url = webinargeek\_add\_subscriber(1455046, 'John Smith', '<john_smith@gmail.com>’)

![](https://lh6.googleusercontent.com/mCz3rupL1g9oWy5sZqIqYZGh9J0qnJQgRQcHnaP_AuXPoddR0IA17Z0OvLuANQo-pi9Ga5Sf8yfmsWQ8YhvnLx_o2kSx38QhtNaZFCrZIoK8SC0If2NJ0SWrxwYLaMiWY72EyQLqIVj1mamOsA)

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

Также после выполнения функции в карточку клиента будут добавлены две переменные:

**webinargeek\_broadcast\_id** - id трансляции, на которую был зарегистрирован пользователь \
**webinargeek\_email** - email, указанный при регистрации

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

## Как проверить посещаемость вебинара через чат-бота

Для проверки посещаемости вам понадобится эта функция **webinargeek\_is\_visitor(webinargeek\_broadcast\_id, webinargeek\_email)**, где

**webinargeek\_broadcast\_id** - id трансляции, на которую был зарегистрирован пользователь \
**webinargeek\_email** - email, указанный при регистрации \
**watch\_minimum** - (необязательный параметр) минимальное количество минут, по которому функция определяет, считается ли посещение засчитанным или нет

**watch = webinargeek\_is\_visitor(webinargeek\_broadcast\_id, webinargeek\_email)**

![](https://lh6.googleusercontent.com/gQ03L945VLCgJuKstGANE3gPxpq5cy9pMDzAmFmrotxR7rLhtrr1-zyVyHJ9ixwqHxiPT9Jj1kDogriLns5PwX0JHwDIHwzz2CQHk0h3mv4J9gj7NhFT3OFrPFnX8EEVisDBPFwPchFva_o4og)

В ответ в переменную будет вставлен текст:

* Если вебинар ещё не завершился, то в ответ приходит этот текст: “Webinar not ended yet”;&#x20;
* Если клиент не смотрел вебинар, то в ответ приходит: “False”;&#x20;
* Если клиент смотрел вебинар и параметр **watch\_minimum** не использовался, то в ответ приходит: “True”; \
  Если параметр **watch\_minimum** использовался, то функция проверит, сколько времени клиент его смотрел, и:&#x20;
  * Если клиент смотрел его меньше, чем указанный минимум, то в ответ приходит: “False”;
  * Если время просмотра вебинара клиентом равно или больше указанного значения, то в ответ приходит: “True”.

## Как получить broadcast\_id по названию вебинара, начиная с указанной даты и времени

Чтобы получить broadcast\_id указанного вебинара, вам нужна функция **webinargeek\_search\_broadcast\_id()** с такими параметрами:

**webinar\_list** - здесь нужно передать переменную, в которой хранится результат функции **webinargeek\_get\_webinar\_list()** результат \
**webinar\_name** - название вебинара, broadcast\_id которого нужно найти \
**webinar\_date** - дата трансляции в формате dd.mm.yyyy. Также можно использовать **curret\_date** \
**webinar\_time** - время трансляции в формате hh:mm, где hh = часы, а mm = минуты

**Пример:** \
webinar\_list = webinargeek\_get\_webinar\_list() \
broadcast\_id = webinargeek\_search\_broadcast\_id(webinar\_list, 'Second webinar', current\_date-4, '18:00'

![](https://lh5.googleusercontent.com/hLM4geSphPzR30tVjEsisVtlNKboGeuHEQkdkhRDuGqEyn-7y_nm36HDq1wLWSSSMt1NJFqvhVRYekCfNGCFQl7dUvXfe1D7-uVHyr9qJAV0I346SXSC8oPA4h7uMuqgRGpwwQKu1mvN_EXWLw)

Здесь мы пытаемся найти id трансляции, которая проходила за 4 дня до текущей даты в 18:00 и называлась «Second webinar».

Если вебинар, соответствующий параметрам, был в списке, то функция возвращает id найденного вебинара в переменную broadcast\_id.

Если такой вебинар не найден, то вместо этого вставляется текст: "No webinar with these parameters".


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.mavibot.ai/doc/ru/integrations/other/infobusiness/webinar.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
