Appshare
From Dokeos
Contents |
AppShare – Technical aspects
Introduction
The aim of this application is to procure the teacher the possibility to share his screen with the students. For this purpose, we used VNC with 3 small programs (on the teacher side (J #), the relay (java), the student (java applet)).
Architecture
All data exchanges must be realized through one unique port (example: 443).
Local Relay
The local relay downloads a standard vnc server and executes it (the vnc server only listens on localhost). The local relay is a "signed" program, meaning that the N last bytes represent an identifying code which allows to know to which course it is referred to. This program must therefore be downloaded whenever the screen is shared.
Installation
In order to publish the J# code, it is better to install: http://msdn2.microsoft.com/fr-fr/vjsharp/bb188594.aspx
The local relay is written in J# (in order to facilitate its use through Windows), to configurate it, just open the "config.jsl" file. The two main methods to be modified are:
- getVNCExecutableURL() : gives the URL towards a correct winvnc.exe.
- GetRelayHostName() : gives the address of the "relay".
Relay Server
Initially, the relay server will “register" the local relay and create a course so that the applet customer can connect himself to it. A course will be identified through the signature of the local relay. After the inscriptions, the relay will only relay the VNC packages of the teacher to the students.
Installation
To launch the relay, it is necessary to compile the java classes in it and then execute it:
java be.noctis.vnc.relay.Relay
or
java -jar relay.jar : if the classes were compiled in a jar file (advised)
Optional parameter: [ Port number ] [ IP ] (default: 443 and all addresses IP)
Client applet
A customer must know the identifying code of the teacher. He will be able to connect himself to it via the relay.
To start the applet, it is necessary to activate a course and go to the page:
- activate a course
- go to the page : http://[host]:[port]/main/app_share/index.php
The teacher clicks on 'sharing my screen' and the students click on the 'visualize the shared screen' button. This is in the context of a course.
Rmq: At present, the teacher must be under Windows :-(
Protocol
|
VNC |
Local Relay |
Server Relay |
Client Applet |
|
|
|
<<< download appShare |
|
|
|
Lauch appShare |
|
|
|
|
|
<<< download vnc |
|
|
Lauch vnc |
|
|
|
|
|
Register server xxx >>> |
|
|
|
|
|
|
<<< connect to xxx (client A) |
|
|
|
<<< ask vnc connection for A |
|
|
|
<<< create vnc con. for A |
|
|
|
Send screen >>> |
<<< relay VNC >>> |
<<< relay VNC >>> |
>>> display screen |
|
|
|
|
|



