diff --git a/README.md b/README.md index 7808534503157d8d620bd6dae2491f8af1a8dde8..bdc195b826a686ebfa0790b4e09ae639cfaacdd1 100644 --- a/README.md +++ b/README.md @@ -59,8 +59,8 @@ content provided by some other tool via a web interface, for instance a BigBlueButton presentation or the shared whiteboard of OpenMeetings. -PULT itself only handles video. For the audio part it cooperates -with Mumble. +PULT itself only handles video. For the audio part and chat part +it cooperates with Mumble. The virtual “meeting rooms” in PULT are called *channels*. For each channel, there is one instance of noVNC, showing a virtual desktop, @@ -126,9 +126,9 @@ Currently we provide the following modules: This module makes these boards visible in the channel. Each channel is easily configurable to meet the needs of the -lecturer. One lecturer might want as few buttons as possible, -while another one might prefer to have all modules enabled, just -in case. +lecturer. One lecturer might want as few buttons as possible +(see fig. 1), while another one might prefer to have all modules +enabled, just in case (see fig. 2). For each configured module, the lecturer's console features a row of buttons to start and stop the module, and to hide and show its @@ -138,52 +138,127 @@ rather than full-screen. For camera modules this is the default. A typical application is to run a VNC shared desktop full-screen and to show a camera view of the lecturer at the edge. +>  +> +> Figure 1: a minimalistic PULT console. +> +> VNC is enabled automatically. +> The buttons are for switching a camera. + +>  +> +> Figure 2: a PULT console with many features enabled +> +> In this configuration, the lecturer can show 2 different +> shared desktops (“VNC”), 5 different camera images (“Kamera”), +> 2 different shared presentations or boards (“Tafel”), plus +> images or screenshots uploaded by participants (“Upload”). +> +> The green colour indicates that the video source is currently +> active. The yellow colour indicates that it is enabled, but +> currently waiting for a feed. +> +> Below the buttons, the PULT console shows the URLs and other +> types of information how to feed visual data into the system. +> These lines remain visible as long as they are needed. + How does this look like in practice? ------------------------------------ -Students S1, S2, ... want to take part in a lecture by lecturer L. -They connect to Mumble for the audio part. For the video part, they -go to the web page of the channel, type in the channel's password, -and see a welcome screen. - -Lecturer L goes to another specific web page, the PULT console. -L presses the buttons labeled “VNC start” and “Camera start”. -L starts the VNC server software and connects to the server. -L's shared desktop appears in the channel. L follows a link -from the PULT console to a separate web page to activate the -camera. The camera view becomes visible in the lower right -corner of the channel. - -For welcoming the students, L presses the button labeled -“Camera max“. The camera view becomes full-screen, hiding -the shared desktop. After the welcoming, L presses “Camera min” -to switch back to the previous screen arrangement. - -Student S1 wants to ask a question. For this purpose, S1 needs -to upload a screenshot. L presses the “Upload start”. The PULT -console displays a URL. L forwards this URL to S1 via the Mumble -chat. S1 follows the link and presses the “Screenshot” button. -S1's screenshot appears in the channel, hiding L's desktop, but -not the camera view. - -While L answers S1's question, L presses “Upload hide” to switch to -L's desktop, and later “Upload show” to switch back to S1's uploaded -screenshot. When the question is answered, L presses “Upload stop”. -S1's screenshot vanishes, we are back to the full-screen view of L's -desktop with a camera view in the corner. - -After a while, S2 wants to share a desktop to discuss some results. -L presses “VNC guest start”. Since S2 does not have a VNC server -installed, L copies a URL from the PULT console to S2 in the Mumble -chat. S2 follows the URL and presses a button. S2's desktop is -presented full-screen in the channel, with L's camera view in the -corner. L decides that the camera view hides important parts of -S2's desktop, and presses “Camera hide”. The camera view vanishes. -After the discussion, L presses “VNC Guest stop”. S2's desktop -vanishes; L's desktop is visible again. - -At the end of the lecture, L presses “Camera max” to make the -camera view full-screen to say goodbye. L presses “Camera stop” -and “VNC stop”. The channel shows a welcome screen again. -To end the session, everyone closes their browser windows. + * Students S1, S2, ... want to take part in a lecture by lecturer L. + They connect to Mumble for the audio part. For the video part, they + go to the web page of the channel, type in the channel's password, + and see a welcome screen. + +>  +> +> The welcome screen at the Bochum University of Applied Sciences + + * Lecturer L goes to another specific web page, the PULT console. + L presses the buttons labeled “VNC start” and “Camera start”. + L starts the VNC server software and connects to the server. + L's shared desktop appears in the channel. L follows a link + from the PULT console to a separate web page to activate the + camera. The camera view becomes visible in the lower right + corner of the channel. + +>  +> +> PULT console with VNC and Camera started + +>  +> +> The noVNC screen shows the lecturer's shared desktop in +> full-screen mode and the camera view in the lower right corner. +> The lecturer's desktop features a presentation on the left. + + * For welcoming the students, L presses the button labeled + “Camera max“. The camera view becomes full-screen, hiding + the shared desktop. After the welcoming, L presses “Camera min” + to switch back to the previous screen arrangement. + +>  +> +> The camera in full-screen view + + * Now L wants to explain a source code. L uses the PULT console + to switch back from camera full-screen mode to the view of the + shared desktop with the camera view in the lower right corner. + L minimises the presentation on the desktop and presents the + source code. + +>  +> +> The same arrangement with the desktop showing a smaller view of +> the presentation on the right and a source code example on the +> left. + + * Student S1 wants to ask a question. For this purpose, S1 needs + to upload a screenshot. L presses the “Upload start”. The PULT + console displays a URL. L forwards this URL to S1 via the Mumble + chat. S1 follows the link and presses the “Screenshot” button. + S1's screenshot appears in the channel, hiding L's desktop, but + not the camera view. + + * While L answers S1's question, L presses “Upload hide” to switch to + L's desktop, and later “Upload show” to switch back to S1's uploaded + screenshot. When the question is answered, L presses “Upload stop”. + S1's screenshot vanishes, we are back to the full-screen view of L's + desktop with a camera view in the corner. + + * L asks the students to present some mathematical calculations. + S2 volunteers and wants to use the OpenMeeting whiteboard for + this purpose. L presses “OM board start” on the PULT console. + S2 logs into OpenMeetings and draws the mathematical calculations + for everyone to see via noVNC. + +>  +> +> A shared OpenMeetings whiteboard presented via noVNC. +> The cameraa view still shows the lecturer. + + * S2 wants to share a camera view as well, using Jitsi Meet. + L enables the Jitsi Meet camera view via the PULT console. + S2 logs into Jitsi Meet, and the second camera view appears + on the noVNC screen. + +>  +> +> A shared OpenMeetings whiteboard presented via noVNC, plus +> two camera views. The upper one was sent via Jitsi Meet. + + * After a while, S3 wants to share a desktop to discuss some results. + L presses “VNC guest start”. Since S3 does not have a VNC server + installed, L copies a URL from the PULT console to S3 in the Mumble + chat. S3 follows the URL and presses a button. S3's desktop is + presented full-screen in the channel, with L's camera view in the + corner. L decides that the camera view hides important parts of + S3's desktop, and presses “Camera hide”. The camera view vanishes. + After the discussion, L presses “VNC Guest stop”. S3's desktop + vanishes; L's desktop is visible again. + + * At the end of the lecture, L presses “Camera max” to make the + camera view full-screen to say goodbye. L presses “Camera stop” + and “VNC stop”. The channel shows a welcome screen again. + To end the session, everyone closes their browser windows. [To be continud.] diff --git a/doc/images/janus-camera-full-screen-20201226-135814.png b/doc/images/janus-camera-full-screen-20201226-135814.png new file mode 100644 index 0000000000000000000000000000000000000000..dfe36bbbebe096d747d475664a03f966d5f79ed5 Binary files /dev/null and b/doc/images/janus-camera-full-screen-20201226-135814.png differ diff --git a/doc/images/novnc-camera-full-screen-20201226-140345.png b/doc/images/novnc-camera-full-screen-20201226-140345.png new file mode 100644 index 0000000000000000000000000000000000000000..67f25b29135bdaa72fc8ec284c0b3d6ab8a354fa Binary files /dev/null and b/doc/images/novnc-camera-full-screen-20201226-140345.png differ diff --git a/doc/images/novnc-desktop-20201226-135635.png b/doc/images/novnc-desktop-20201226-135635.png new file mode 100644 index 0000000000000000000000000000000000000000..a1aed5d96c202024bc0e1eccefdba8f508f056eb Binary files /dev/null and b/doc/images/novnc-desktop-20201226-135635.png differ diff --git a/doc/images/novnc-desktop-and-janus-camera-20201226-135830.png b/doc/images/novnc-desktop-and-janus-camera-20201226-135830.png new file mode 100644 index 0000000000000000000000000000000000000000..36af9bedcf234ce468b2d17c3913538d36cba670 Binary files /dev/null and b/doc/images/novnc-desktop-and-janus-camera-20201226-135830.png differ diff --git a/doc/images/novnc-desktop-janus-camera-20201226-180026.png b/doc/images/novnc-desktop-janus-camera-20201226-180026.png new file mode 100644 index 0000000000000000000000000000000000000000..500f57e815eae3ad72bf597d6f3f2201c2b71ded Binary files /dev/null and b/doc/images/novnc-desktop-janus-camera-20201226-180026.png differ diff --git a/doc/images/novnc-desktop-janus-camera-and-novnc-camera-20201226-140423.png b/doc/images/novnc-desktop-janus-camera-and-novnc-camera-20201226-140423.png new file mode 100644 index 0000000000000000000000000000000000000000..758b53df29dba7375bdf098b51bd6ebaf0d351d0 Binary files /dev/null and b/doc/images/novnc-desktop-janus-camera-and-novnc-camera-20201226-140423.png differ diff --git a/doc/images/novnc-om-board-and-janus-camera-20201226-135905.png b/doc/images/novnc-om-board-and-janus-camera-20201226-135905.png new file mode 100644 index 0000000000000000000000000000000000000000..16ee7f2ccf24d1e8886d5fab2988ba9ebc7dac30 Binary files /dev/null and b/doc/images/novnc-om-board-and-janus-camera-20201226-135905.png differ diff --git a/doc/images/novnc-om-board-janus-camera-and-novnc-camera-20201226-140306.png b/doc/images/novnc-om-board-janus-camera-and-novnc-camera-20201226-140306.png new file mode 100644 index 0000000000000000000000000000000000000000..1c351d11063be0d2085399852b490969f4ef52d5 Binary files /dev/null and b/doc/images/novnc-om-board-janus-camera-and-novnc-camera-20201226-140306.png differ diff --git a/doc/images/novnc-welcome-screen-20201226-135612.png b/doc/images/novnc-welcome-screen-20201226-135612.png new file mode 100644 index 0000000000000000000000000000000000000000..827d17620fbe4af943f0011fb2f24d8e41d6d835 Binary files /dev/null and b/doc/images/novnc-welcome-screen-20201226-135612.png differ diff --git a/doc/images/pult-channel-1-20201226-153714.png b/doc/images/pult-channel-1-20201226-153714.png new file mode 100644 index 0000000000000000000000000000000000000000..4b19cecf38c2cfc5ce67303ca01078c636b4a0e1 Binary files /dev/null and b/doc/images/pult-channel-1-20201226-153714.png differ diff --git a/doc/images/pult-channel-6-20201226-154050.png b/doc/images/pult-channel-6-20201226-154050.png new file mode 100644 index 0000000000000000000000000000000000000000..1d90473b5d2577d287e03a82b77e5923d8ef4d65 Binary files /dev/null and b/doc/images/pult-channel-6-20201226-154050.png differ diff --git a/doc/images/pult-channel-6-20201226-154114.png b/doc/images/pult-channel-6-20201226-154114.png new file mode 100644 index 0000000000000000000000000000000000000000..2d23f3cbc04e565cab1ea51b17fc56b42b3dc631 Binary files /dev/null and b/doc/images/pult-channel-6-20201226-154114.png differ diff --git a/doc/images/pult-starting-om-board-20201226-135845.png b/doc/images/pult-starting-om-board-20201226-135845.png new file mode 100644 index 0000000000000000000000000000000000000000..eedf08f57e120a362e4eb6128b8e547b9f2cad06 Binary files /dev/null and b/doc/images/pult-starting-om-board-20201226-135845.png differ diff --git a/doc/images/pult-starting-vnc-20201226-135607.png b/doc/images/pult-starting-vnc-20201226-135607.png new file mode 100644 index 0000000000000000000000000000000000000000..9ddfb75f0b21f595c0338e3127b332a27c4c1c3e Binary files /dev/null and b/doc/images/pult-starting-vnc-20201226-135607.png differ diff --git a/doc/images/pult-vnc-and-camera-started-20201226-135647.png b/doc/images/pult-vnc-and-camera-started-20201226-135647.png new file mode 100644 index 0000000000000000000000000000000000000000..cad5acf06e541ea441d4926b5e802da443a4304b Binary files /dev/null and b/doc/images/pult-vnc-and-camera-started-20201226-135647.png differ