1. Войдите как преподаватель

Откройте личную ссылку входа, полученную от владельца сервера. Она имеет вид https://ваш-сервер/admin/k/… и открывает панель преподавателя. Пароль и почтовое подтверждение не нужны.

Если вы впервые настраиваете собственный сервер, откройте ссылку /admin/t/…: пока у сервера нет владельца, он печатает её в журнал при каждом запуске. Можно и открыть /admin и вставить токен настройки вручную. Токен хранится в DATA_DIR/setup-token: в стандартной установке k3s это /var/lib/colloq/data/setup-token, при установке через pip install colloq — ~/.colloq/data/setup-token. Введите имя и почту и нажмите «Стать владельцем». Этот же токен позволяет восстановить доступ позже.

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

2. Создайте занятие

В панели откройте раздел «Занятия» и нажмите «Новое занятие». Задайте название, выберите окружение Python, стартовую тетрадь («Пустая тетрадь», «Из файла» или «Из GitHub» — только публичные репозитории) и формат. Окружение потом видно в строке занятия в списке «Занятия», а сменить его можно в «Настройках» занятия, пока ядро занятия не запущено, — см. окружение занятия. В разделе «Ресурсы» можно задать память и число процессорных ядер для ядра комнаты. Память можно поднять и во время занятия через «Настройки» в меню занятия — ядро при этом не перезапускается ни в Docker, ни в установке на k3s. Подробности — в разделе «Память и процессор занятия».

ФорматНачальные правилаКогда выбрать
ОбычныйГруппа редактирует общую тетрадь и запускает код.Практика и совместный разбор.
ЛекцияРедактирование, запуск, состав тетради и файлы — у преподавателя; отдельные ячейки он открывает группе.Объяснение с демонстрацией.
КонсилиумПравила лекции; открытие ячейки выдаёт каждому свой лист.Задача с последующим обсуждением ответов.

Это начальные наборы правил. Их можно менять по ходу занятия. Доступ к оракулу — «Как настроено для инстанса», «Выключен», «Только подсказки» или «Полные ответы» — выбирается при создании в пределах режима сервера; изменить его после создания нельзя.

3. Подготовьте рабочее место

  1. Добавьте код и пояснения в тетрадь; при необходимости загрузите ноутбук и данные.
  2. Запустите подготовительные ячейки. Убедитесь, что нужные библиотеки доступны в выбранном окружении.
  3. Проверьте права студентов: редактирование, исполнение, файлы, оракул и общий экран.
  4. Откройте ссылку занятия в отдельном приватном окне и войдите как студент. Проверьте именно этот вид перед началом пары.

Для лекции заранее загрузите PDF и проверьте проектор и пульт. Для Консилиума выполните общий подготовительный код до открытия задания.

4. Пригласите группу

Скопируйте ссылку занятия из панели и отправьте её в чат группы. Студенту достаточно открыть её в браузере и ввести имя. Устанавливать Python на студенческие компьютеры не требуется: код выполняется на сервере.

Если в ссылке оказался localhost, сначала исправьте внешний адрес сервера. На своём компьютере colloq start --share даёт занятию публичный адрес и печатает ссылку для рассылки (одна ссылка). Проверьте открытие ссылки с другой сети, а не только с преподавательского ноутбука.

5. Завершите занятие

В комнате нажмите кнопку с замком «Что можно делать в комнате», затем «Закончить занятие»; в панели то же действие — «Завершить занятие» в меню занятия. Студенты смогут перечитать материалы, файлы, историю терминала и ответы оракула, но активные действия останутся преподавателю. «Продолжить занятие» вернёт исходные правила.

Если комната стоит в курсе, после завершения Colloq предложит выбрать материалы для страницы занятия: тетради с результатами, слайды и данные по одной постоянной ссылке. Завершение занятия, публикация и удаление комнаты — разные действия.

Доступ других преподавателей

Владелец добавляет преподавателя в разделе «Преподаватели» кнопкой «Добавить преподавателя»: имя и почта нужны для идентификации, Colloq не отправляет писем. Передайте созданную ссылку для входа лично. Если ссылка потеряна или стала доступна посторонним, нажмите «Заменить ссылку для входа» в строке преподавателя: прежняя ссылка и открытые с ней сеансы перестанут работать.

Владелец и преподаватель

В панели две роли. Владелец видит и меняет всё: каждый курс, каждую комнату, список преподавателей и настройки сервера. Преподаватель видит только то, что ведёт сам: свои курсы и комнаты. Так на одном сервере уживаются курсы разных кафедр — никто не листает чужие занятия и не оказывается ведущим в чужой комнате.

ВладелецПреподаватель
«Курсы» и «Занятия»Всё. Переключатель «Мои / Все»: по умолчанию «Мои» — то, что он ведёт сам, во «Все» — курсы и комнаты коллег.Курсы, где он в списке «Ведут», комнаты этих курсов и комнаты, где он среди ведущих.
Ведущий в комнатеВ любой.Только в комнатах, которые видит в панели.
Добавить преподавателяВ любой курс и любую комнату; на экране «Преподаватели» — колонка «Курсы».В свой курс или свою комнату, в том числе пригласить по почте.
Удалить курс или комнатуДа.Нет.
«Оракул», «Окружения», «Ресурсы»Смотрит и меняет.Смотрит. В «Ресурсах» видны только свои комнаты, общие цифры памяти и процессора — по всему серверу.

Ссылки на чужие курсы и комнаты в панели отвечают «не найдено», как будто их нет. Публичные страницы /c/… и /p/… от этого не меняются: их по-прежнему читает любой, у кого есть ссылка.

После обновления до 0.19 ничего не пропадает

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

Преподаватели курса

Кто создал курс, тот сразу его ведёт. Под названием курса — строка «Ведут» с именами; «вы» отмечает вас самих. Кнопка «+ Добавить преподавателя» открывает поиск по имени или почте среди тех, кто уже в списке преподавателей. Если нужного человека нет, «Пригласить по почте» создаёт его и сразу добавляет в курс: ссылку для входа покажут один раз — передайте её лично, как и ссылку от владельца. Если почта уже в списке, человека просто добавят в курс, а новой ссылки не будет: своя у него уже есть.

Преподаватели курса — ведущие во всех комнатах курса: и в тех, что создали они сами, и в тех, что создал коллега или поставил в курс владелец. Убрать комнату из курса — значит забрать её у преподавателей курса, кроме тех, кто ведёт её лично. Если у комнаты нет своих ведущих и она не стоит в другом курсе, она остаётся у преподавателей курса как у ведущих — иначе её видел бы только владелец. То же при удалении курса. Изменения доходят до открытых комнат сразу, без перезагрузки сервера.

Себя из курса убрать можно всегда. Последнего преподавателя курса убирает только владелец, чтобы курс не остался без хозяина у всех, кроме владельцев.

Занятие без курса

Курс не обязателен. На экране «Новое занятие» в блоке «Курс» есть карточка «Без курса»: комната создаётся сама по себе, и её видит тот, кто её создал, и те, кого он добавил. Добавляют в настройках занятия, в поле «Ведущие». Последнего ведущего комнаты вне курсов убирает только владелец.

Поставить занятие без курса в курс можно и потом, прямо из списка «Занятия»: в строке такого занятия и в его меню есть «Добавить в курс…». Откроется список курсов, которые вы ведёте (у владельца — по переключателю «Мои / Все»); выбранный курс получит занятие в конец своего плана, как при добавлении на экране курса, а строка сразу перейдёт в группу этого курса. Если вы не ведёте ни одного курса, в строке этой ссылки нет, а меню предлагает «+ Новый курс». Занятие, которое уже стоит в курсе, так не переносится: из курса в курс его переставляют на экране курса. Архивному занятию действие не предлагается.

Если выбрать курс, комната сразу встаёт в выбранную строку плана — тема и день берутся оттуда — или в конец курса. Ведущие у комнаты курса тоже бывают: например, ассистент ведёт одно занятие, не становясь преподавателем всего курса.

Вы открыли чужую комнату

Преподаватель, который открыл ссылку на комнату, которую он не ведёт, входит в неё как обычный участник — под своим именем, по правилам комнаты, без управления ядром, правил, лекции и бана. Сверху комнаты стоит полоса: «Это комната курса «…». Вы здесь как участник.» и кто её может вести. Чтобы стать ведущим, попросите любого из них добавить вас в курс или в ведущие комнаты — или владельца. После добавления перезагрузите страницу: комната откроется уже как ваша.

Так же устроен вход со страницы занятия: обход правила «Участники» и «Никто» действует только для преподавателей этой комнаты.