Переводим студентов на удаленку за 1 день

    image

    Еще 16 марта мы сидели в уютном оупенспейсе, а уже на следующий день весь офис переехал на удаленку, домой. На хабре достаточно подобных историй. Но специфика нашей ситуации заключается не в переводе сотрудников, а переводе клиентов. Это более трех тысяч студентов, которые пришли учиться на дневном, но в одначасье оказались на заочном.

    Что было сделано


    Учебным отделом для преподавателей были разработаны методические рекомендации по ведению лекций online. Например, такие как:

    Длительность занятий
    Если у вас в расписании запланировано было офлайн-занятие длительностью 4 ак.часа, то вы можете сохранить эту длительность для онлайн, однако ввести более длинный перерыв (30-40 минут), чтобы студенты успели отдохнуть.

    Если у вас в расписании запланировано было офлайн-занятие длительностью 8 ак.часов (полный день в выходные), то мы рекомендуем разделить занятие на две части (и вести занятия не три, например, раза в неделю, а четыре).

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

    Фокусировка внимания
    Теоретические занятия в онлайне максимально похожи на офлайн, но– однако стоит учесть, что фокус внимания в онлайне еще короче, чем в офлайне. Поэтому мы рекомендуем проводить лекции с интерактивным форматом: например, 15-20 минут теоретического материала, после которого следует дискуссия, вовлекающая в обсуждение всех студентов.

    Интерактивные занятия лучше всего проводить в малых группах (10-12 человек). Если у вас большая группа (30+ человек), то лучше «разбить» группу на две части и провести, например, первые 2 ак.часа с первой половиной и вторые 2 ак.часа – с другой.

    Огромная работа легла на сотрудников первой и второй линии поддержки. В одночасье на поддержке оказались тысячи личных устройств пользователей, на которых надо помочь установить необходимый софт, выдать лицензии на специфическое ПО и еще, внезапно, Zoom не работает в Крыму (кто успел туда уехать), Опера c встроенным VPN`ом помогают.

    В качестве основной платформы был выбран Zoom.

    Изначально остро встал вопрос с планированием занятий, созданием конференций и информированием всех студентов и проеподавателей.

    image

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

    image

    А так, когда оно снова стало вестись в 1с

    Спасибо моему коллеге, что он оперативно раскурил API Zoom`а и прикрутил автоматическое создание конференции в соответствии с расписанием. А так же автоинформирование об этом.

    А тут ссылка на труды Сергея, как с помощью Zoom API можно создавать конференции.

    Я в свою очередь хочу поделиться опытом по интергации платформы в Android приложение.
    В нашем юзер-кейсе это оказалось очень удобно, т.к. конференции создаются на сервере и их идентификаторы передаются в расписание на телефоне.

    image

    Интерфейс расписания интегрированного с Zoom

    Теперь посмотрим как это работает.
    Исходный код

    1. Импортируем две библиотеки из SDK: commonlib и mobilertc. Это, наверно, самый печальный этап, т.к. ваше приложение становится тяжелее на 80 мегабайт.

    2. Имплементируем InitAuthSDKCallback, MeetingServiceListener в нашу активити или фрагмент. Для работы зума нужен минимальный API 21 (В документации на сайте указан minSdkVersion 16, но ее не очень оперативно обновляют, лучше ориентироваться на примеры в семплах идущих с SDK).

    При создании фрагмента инициализируем SDK

    Инициализация Zoom SDK
    private View view;
    private ZoomSDK mZoomSDK;
    @Override
    public View onCreateView(
                LayoutInflater inflater, ViewGroup container,
                Bundle savedInstanceState) {
            view = inflater.inflate(R.layout.fragment_first, container, false);
    
            mZoomSDK = ZoomSDK.getInstance();
            if (mZoomSDK.isLoggedIn()) {
                getActivity().onBackPressed();
                return null;
            }
    
            InitAuthSDKHelper.getInstance().initSDK(getContext(), this);
            if (mZoomSDK.isInitialized()) {
    
                ZoomSDK.getInstance().getMeetingService().addListener(this);
                ZoomSDK.getInstance().getMeetingSettingsHelper().enable720p(true);
            }
    
            return view;
    }
    


    Для этого созаем класс InitAuthSDKHelper и вызываем функцию:

    initSDK
    public void initSDK(Context context, InitAuthSDKCallback callback) {
            if (!mZoomSDK.isInitialized()) {
                mInitAuthSDKCallback = callback;
    
                ZoomSDKInitParams initParams = new ZoomSDKInitParams();
    //            initParams.jwtToken = SDK_JWTTOKEN;
                initParams.appKey = SDK_KEY;
                initParams.appSecret = SDK_SECRET;
                initParams.enableLog = true;
                initParams.logSize = 50;
                initParams.domain = WEB_DOMAIN;
                initParams.videoRawDataMemoryMode = ZoomSDKRawDataMemoryMode.ZoomSDKRawDataMemoryModeStack;
                mZoomSDK.initialize(context, this, initParams);
            }
    }


    Тут обратим внимание на следующие параметры:

    appKey и appSecret — это идентификатор и секретный ключ вашего приложения, которое вы создаете на сайте зума (занимает примерно 1 минуту), зарегитрировавшись как разработчик.

    На практике настоятельно не рекомендуется использовать их для идентификации.
    Вместо них следует использовать параметр jwtToken, как это сделать написано тут.

    Подключение к конференции
    private AutoCompleteTextView idMeeting;
    private AutoCompleteTextView idDisplayName;
    
    private void onClickJoin() {
            if(!mZoomSDK.isInitialized())
            {
                Toast.makeText(getContext(),"ZoomSDK has not been initialized 
                successfully",Toast.LENGTH_SHORT).show();
                InitAuthSDKHelper.getInstance().initSDK(getContext(), this);
                return;
            }
    
    if (ZoomSDK.getInstance().getMeetingSettingsHelper().isCustomizedMeetingUIEnabled()) {
       ZoomSDK.getInstance().getSmsService().enableZoomAuthRealNameMeetingUIShown(false);
    } else {
       ZoomSDK.getInstance().getSmsService().enableZoomAuthRealNameMeetingUIShown(true);
    }
    
            String number = idMeeting.getText().toString();
            String name = idDisplayName.getText().toString();
    
            JoinMeetingParams params = new JoinMeetingParams();
            params.meetingNo = number;
            params.displayName = name;
            ZoomSDK.getInstance().getMeetingService().joinMeetingWithParams(getContext(), params);
    }
    


    image

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

    Выводы


    1. Процесс обучения (за исключением тех случаев, когда требуются мастерские и спец. оборудование) можно перевести в online.
    2. Важен целенаправленный и систематический подход, чтобы исключить зоопарк инструментов коммуникации, которые каждый тьютор будет использовать.
    3. Если у вас на бэкенде учебный процесс был до этого налажен, то внедрение конференций в мобильное приложение не займет много времени.
    AdBlock похитил этот баннер, но баннеры не зубы — отрастут

    Подробнее
    Реклама

    Комментарии 12

      0

      zoom, 1C? OK

        0

        Это всего лишь инструменты. Главное бизнес результат, полученный имеющимися средствами.

        +3
        Переводим студентов на удаленку за 1 день


        Реал: карантин у нас был введен внезапно, в середине недели.
        Это лишило нас возможности провести общий инструктаж групп студентов и преподавателей.
        Неделя ушла на согласование и организацию процесса.

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

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

        Получились по факту цепочки: деканат- преподаватель- староста- студент и деканат- староста — преподаватель. При этом деканаты тоже работают «из дома».

        Второе.
        Полный разнобой в программном и аппаратном обеспечении студентов. Буквально полный. Студенты, имеющие ноутбуки, оказались в более выигрышном положении, чем те, кто имеет только смартфон. Это как скорость передвижения на авто и пешком в городе без пробок.
        (кстати, студентов, имеющих десктоп оказалось исчезающе мало. Но им-то как раз сейчас наиболее комфортно)
        Используются разные версии Windows, от ХР в сборке «Зверь» до 10, MacOS и iOS разных версий, и совершенно разношерстный Андроид.
        Куча вирусов на устройствах (последствия публикаций в сети типа «я пять лет не использую антивирус, полет нормальный», принятых всерьез).
        Как следствие «а у меня это не работает»- от каждого пятого студента.

        Третье. Проблемы с Интернет.
        Низкая скорость, постоянные обрывы связи, отсутствие Интернета вообще в сельских населенных пунктах, более того — проблемы и с мобильной связью.
        Информация о подобных проблемах, реальных, соблазняет жульничать часть студентов — проверить эти сведения никак нельзя, воздействовать дисциплинарными методами — тоже (а вдруг это правда ).

        Четвертое. Многие студенты обращаются со своими устройствами как с телевизором — показали, куда нажимать и все. Что там внутри и как это работает — полные потемки.
        Поставить какую-то программу могут только из какого-нибудь Х-стора, да и то — далеко не все (есть сервисы, занимающиеся тем, что ставят по заказу ПО на смарты, и у них нет недостатка в клиентах).
        Вопрос «какая у вас ОС» ставит их в тупик. Многие вообще не знают, что такое «операционная система». Есть люди, пользующиеся Андроид и не знающие, что это Андроид.
        С iOS дела хуже всего.
        Многие не знают о существовании других браузеров, кроме Хрома.
        (подозреваю, что и слова «браузер» они тоже не знают, а просто догадываются из контекста беседы о чем идет речь)

        Пятое. Зум и Скайп.
        Зум знают все, как минимум уже успели объяснить другие студенты. Интерфейс понятен любому (хотя смысл слов «нажмите внизу зеленую кнопку» доходит не сразу — о понимании фразы «запустите демонстрацию экрана» и речи нет).
        Скайп, несмотря на свою внешнюю простоту и сходство функций — вводит в ступор.
        Эту программу упростили до полного непонимания «куда нажимать».
        Если студент умеет работать в Скайп — это уже продвинутый студент, знающий что такое ОС и какую винду он использует.
        При ДО нам нужен офис. Если он вообще есть на устройстве — там полный спектр от 2003 до имитирующих МС Офис программ на смартах. И, соответственно, сказать «откройте вкладку Вставка» — это ничего не сказать. Надо пояснить индивидуально с учетом конкретного используемого студентом ПО.

        О существовании OneDrive/Google Drive и т.п., как внезапно выяснилось, знают единицы (преподы — не исключение) К офисным приложениям этих сервисов это тоже относится.

        Реальность оказалась более суровой, чем это виделось до марта месяца всем ИТ-специалистам.

        Впору начинать вторую волну ликвидации компьютерной безграмотности.

          0

          Поддержка — новые герои нашего времени. Вчера смотрю в Slack, сотрудник пишет: "Не могу дозвониться до поддержки". Ответ: "У нас очередь на 15 звонков висит"...

          0
          Я не пойму, а вы где все живёте? Нашему подмосковному учебному заведению министерство образования запретило (крайне не рекомендовало) использовать Zoom, Skype и прочее в виду их «зарубежности». Подняли свой Moodle с BigBlueButton. Естественно с обязательным условием, что сервер в России.
            0

            Москва, но у нас не государственное учебное заведение. Когда, в свое время, изучал софт, используемый для автоматизации гос. ВУЗ`ов — мурашки по спине пробегали от количества бюрократии и следующей из этого инертности системы.

              0

              А ваш минобраз не захотел дать стабильно работающую альтернативу тому же Zoom?
              У нас региональный минобраз не стал заморачиваться и отдал это все на откуп ОУ.

                +1
                Дали. TrueConf. Только он не работает ни шиша.
                  0
                  А можете поподробнее рассказать, что не работает, пожалуйста?
                    0
                    Ну если кратко — перманентные тормоза. Особенно часто видео отстаёт от звука.
                      0
                      На своем сервере подняли? Или минобраз на своем поднял? Тогда, вероятнее всего, все вопросы к тому… кхм… железу и каналам связи, на которых это поднято.
                0
                (крайне не рекомендовало) использовать Zoom


                Кстати, о Zoom.
                Давеча одной молодой преподавательнице некто нарисовал на экране член, во время лекции.
                Разбор полетов показал, что ютьюб полон инструкций на тему «как это сделать и остаться незамеченным».

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

              Самое читаемое