main/models.py

class main.models.DiscordHistory(*args, **kwargs)[source]

Модель, содержащая информацию для discord-бота

Parameters
  • event_id – ID вебинара

  • message_ids – Список ID отправленных ботом сообщений

  • webhooks – Список webhook для трансляции в discord

  • active – Флаг, указывающий, транслировать ли сообщения или нет

exception DoesNotExist
exception MultipleObjectsReturned
update_settings(*args, **kwargs)[source]

Обновление настроек

class main.models.User(*args, **kwargs)[source]

Модель пользователя

Parameters
  • webinar_session – ForeignKey на модель сессии

  • fontsize – Размер шрифта виджетов

exception DoesNotExist
exception MultipleObjectsReturned
save(*args, **kwargs)[source]

Сохранение пользователя

Return type

None

update_fontsize(*args, **kwargs)[source]

Обновление размера шрифта у пользователя

Return type

None

class main.models.WebinarSession(id, user_id, email, password, cookie, last_login)[source]
exception DoesNotExist
exception MultipleObjectsReturned
accept_message(session_id, **kwargs)[source]

Принятие сообщений

delete_message(session_id, **kwargs)[source]

Удаление сообщений

get_chat(session_id)[source]

Получение чата

Returns

Чат из вебинара

Получение Cookie пользователя :type cookie_name: str :param cookie_name: :rtype: Cookie :return: Cookie

get_event(event_id)[source]

Получение вебинара (события)

Parameters

event_id (int) – id события

Returns

Объект события

get_schedule()[source]

Получение расписания вебинаров

Returns

Расписание вебинаров

get_user()[source]

Получение пользователя

Returns

Объект пользователя webinar

is_correct_data(check_email, check_password)[source]

Проверка на наличие аккаунта на webinar

Parameters
  • check_email (str) – email пользователя

  • check_password (str) – пароль пользователя

Return type

bool

Returns

Существует пользователь или нет

is_login_required()[source]

Проверка на необходимость повторного входа в аккаунт webinar

Return type

bool

login()[source]

Вход в аккаунт webinar через наш сервис

Return type

Optional[Error]

logout()[source]

Удаление данных для авторизации на Webinar

Return type

None

start(session_id, **kwargs)[source]

Начать вебинар

Parameters

session_id (int) – id сессии

stop(session_id, **kwargs)[source]

Закончить вебинар

Parameters

session_id (int) – id сессии

update_settings(session_id, **kwargs)[source]

Обновление настроек

main/views.py

class main.views.AwaitingMessagesView(**kwargs)[source]

Constructor. Called in the URLconf; can contain helpful extra keyword arguments, and other things.

class main.views.ChatView(**kwargs)[source]

Constructor. Called in the URLconf; can contain helpful extra keyword arguments, and other things.

class main.views.ControlView(**kwargs)[source]

Constructor. Called in the URLconf; can contain helpful extra keyword arguments, and other things.

class main.views.EventView(**kwargs)[source]

View-класс вебинара

Constructor. Called in the URLconf; can contain helpful extra keyword arguments, and other things.

class main.views.ExtendedLoginView(**kwargs)[source]

Constructor. Called in the URLconf; can contain helpful extra keyword arguments, and other things.

post(request, *args, **kwargs)[source]

Handle POST requests: instantiate a form instance with the passed POST variables and then check if it’s valid.

Return type

HttpResponse

class main.views.ExtendedRegistrationView(**kwargs)[source]

Constructor. Called in the URLconf; can contain helpful extra keyword arguments, and other things.

post(request, *args, **kwargs)[source]

Handle POST requests: instantiate a form instance with the passed POST variables and then check if it’s valid.

Return type

HttpResponse

class main.views.IndexView(**kwargs)[source]

View-класс главной страницы

Constructor. Called in the URLconf; can contain helpful extra keyword arguments, and other things.

get(request)[source]

View-функция главной страницы (GET)

Parameters

request (HttpRequest) – Детали запроса

Returns

Объект ответа сервера

Return type

class

django.http.HttpResponse

class main.views.ProfileView(**kwargs)[source]

View-класс профиля

Constructor. Called in the URLconf; can contain helpful extra keyword arguments, and other things.

class main.views.ScheduleView(**kwargs)[source]

View-класс списка вебинаров

Constructor. Called in the URLconf; can contain helpful extra keyword arguments, and other things.

class main.views.WebinarCredentialsDeleteView(**kwargs)[source]

Constructor. Called in the URLconf; can contain helpful extra keyword arguments, and other things.

class main.views.WebinarCredentialsUpdateView(**kwargs)[source]

Constructor. Called in the URLconf; can contain helpful extra keyword arguments, and other things.

set_messages(request)[source]

Метод для добавления сообщений при авторизации на webinar через наш сервис :type request: HttpRequest :param request: :return:

main/forms.py

class main.forms.ExtendedRegistrationForm(*args, **kwargs)[source]
class main.forms.WebhooksForm(data=None, files=None, auto_id='id_%s', prefix=None, initial=None, error_class=<class 'django.forms.utils.ErrorList'>, label_suffix=None, empty_permitted=False, field_order=None, use_required_attribute=None, renderer=None)[source]
class main.forms.WebinarCredentialsForm(data=None, files=None, auto_id='id_%s', prefix=None, initial=None, error_class=<class 'django.forms.utils.ErrorList'>, label_suffix=None, empty_permitted=False, instance=None, use_required_attribute=None, renderer=None)[source]

main/webinar.py

class main.webinar.BaseRouter(value)[source]

An enumeration.

class main.webinar.Converter(object, attrs, data)[source]

класс-конвертер

конструктор класса

Parameters
  • object (Any) – объект

  • data (Dict[str, Any]) – данные

  • attrs (List[str]) – аттрибуты, аргументы

__init__(object, attrs, data)[source]

конструктор класса

Parameters
  • object (Any) – объект

  • data (Dict[str, Any]) – данные

  • attrs (List[str]) – аттрибуты, аргументы

convert()[source]

сама функция конвертирования

Return type

Any

class main.webinar.EventRouter(value)[source]

An enumeration.

class main.webinar.MessageRouter(value)[source]

An enumeration.

class main.webinar.UserRouter(value)[source]

An enumeration.

class main.webinar.Webinar[source]

класс вебинара

class Chat(messages, settings)[source]

класс чата

Конструктор класса чата

__init__(messages, settings)[source]

Конструктор класса чата

class Event(user_id, data)[source]

класс события вединара

Parameters

attrs – аттрибуты события вединара

Конструктор класса события вединара

__init__(user_id, data)[source]

Конструктор класса события вединара

class Message(data)[source]

класс сообщения

Parameters

attrs – аттрибуты сообщения

Конструктор класса сообщения

__init__(data)[source]

Конструктор класса сообщения

serialize()[source]

сериализация сообщения

Return type

Dict

class Organization(data)[source]

класс организации

Parameters

attrs – аттрибуты организации

Конструктор класса организации

__init__(data)[source]

Конструктор класса организации

class User(data={}, is_authenticated=False)[source]

класс пользователя

Parameters

attrs – аттрибуты пользователя

конструктор класса

Parameters
  • is_authenticated (bool) – флаг аутентификации пользователя

  • memberships – членства пользователя (принадлежность организациям/группам)

__init__(data={}, is_authenticated=False)[source]

конструктор класса

Parameters
  • is_authenticated (bool) – флаг аутентификации пользователя

  • memberships – членства пользователя (принадлежность организациям/группам)

main/consumers.py

Consumers для работы с сокетами

class main.consumers.AwaitingMessagesConsumer(*args, **kwargs)[source]

Конструктор класса

__init__(*args, **kwargs)[source]

Конструктор класса

async connect()[source]

Метод, срабатывающий после подключения по websockets

Return type

None

class main.consumers.BaseConsumer(*args, **kwargs)[source]
async connect()[source]

Метод, срабатывающий после подключения по websockets

Return type

None

async disconnect(close_code)[source]

Called when a WebSocket connection is closed.

Return type

None

async receive(text_data)[source]

Метод принятия сообщений по websockets

Return type

None

class main.consumers.ChatConsumer(*args, **kwargs)[source]

Конструктор класса

__init__(*args, **kwargs)[source]

Конструктор класса

async connect()[source]

Метод, срабатывающий после подключения по websockets

Return type

None

class main.consumers.ChatMode(value)[source]

An enumeration.

class main.consumers.ControlConsumer(*args, **kwargs)[source]

Конструктор класса

__init__(*args, **kwargs)[source]

Конструктор класса

async connect()[source]

Метод, срабатывающий после подключения по websockets

Return type

None

async disconnect(close_code)[source]

Called when a WebSocket connection is closed.

Return type

None

class main.consumers.Timer(timeout, callback, *args, **kwargs)[source]

Класс таймера

Конструктоор :type timeout: float :param timeout: Сколько секунд между действиями :type callback: Callable :param callback: Функция, которая будет вызываться каждые timeout секунд

__init__(timeout, callback, *args, **kwargs)[source]

Конструктоор :type timeout: float :param timeout: Сколько секунд между действиями :type callback: Callable :param callback: Функция, которая будет вызываться каждые timeout секунд

cancel()[source]

Функция отключения таймера

main.consumers.get_event_settings(webinar_session, event_id)[source]

Получение настроек о событии

Return type

Chat

async main.consumers.send_chat(consumer)[source]

Метод отправки чата

Return type

None

main/apps.py

class main.apps.MainConfig(app_name, app_module)[source]

main/admin.py

main/templates

main/templates/base

base.html

файл, объединяющий основные фрагменты html макета

main/templates/components

main/templates/components/base

main/templates/components/profile

information.html

Фрагмент макета информации о пользователе

password.html

Фрагмент макета формы смены данных пользователя

webinar.html

Фрагмент макета формы ввода данных сервиса вебинаров пользователя

main/templates/components/widget

awaiting.html

Фрагмент объединяющего макета ожидающего модерации сообщения

moderated.html

Фрагмент объединяющего макета модерированного сообщения

messages/awaiting.html

Фрагмент макета ожидающего модерации сообщения

messages/message.html

Фрагмент макета сообщения

messages/moderated.html

Фрагмент макета модерированного сообщения

main/templates/pages

event.html

Страница события. На ней можно посмотреть информацию о событии

index.html

Главная страница приложения

profile.html

Страница профиля

schedule.html

Страница списка вебинаров

widget.html

Страница виджета

main/templates/registration

login.html

Страница входа в аккаунт

signup.html

Страница регистрации