Pool Video Switch 2 ====================================================== Developer and Integrator documentation ------------------------------------------------------ ### Configuration File The configuration file should be saved as `/opt/openslx/pvs2/pvs2.ini`. As this extension is stateless the same set of files is used by both client and manager. A sample configuration can be found in `sample_configuration`. #### General settings * rooms: list all rooms that should be available to users * allowClientQuit: If set to true, users can shut down the client by clicking on "Quit" in the toolbar of pvsclient. #### Room settings A room section represents a physical or virtual room where clients are placed on defined positions. Viable configuration options are: MUST: * mgrIP: The ip of the instructor's PC * client: An array containing all clients and their positions. For the exact syntax compare with the provided sample configuration CAN: * backgroundImage: Path to an image file that will be drawn as a background behind the room window * gridSize: size of the grid, defaults to minimal size to fit all clients on the screen * clientSize: size of the clients on the grid. In combination with a big grid. This allows you to create well-detailed room configurations. * priority: Important for the auto-connect feature, but also affects the sorting in the connect window of the client. ### Lock/Unlock Scripts The functionality of PVS client(`pvsclient`) can be extended by providing additional shell scripts that are executed on certain events. When the PVS client receives the message from the manager to lock the screen it executes `lock.sh` in the configuration directory (`/opt/openslx/pvs2`). When it receives an unlock message the client executes `unlock.sh` in the same directory. We suggest to implement additional locking measures in these files. In the `sample_configuration` folder of this repository you can find 2 scripts that use `xinput` to disable (enable) the keyboard so that users cannot (even when the keyboard input is grabbed by VMWare Player) type while the screen is locked. ### Network Setup