Share & Classroom Control & Screen Mirroring

Share & Classroom Control & Screen Mirroring

2022-03-06. Category & Tags: Classroom, Share, Terminal, Control, Screen, Mirroring

Live Terminal Sharing (inc. Read-Only) #

simple: script + node-webterm #

See Github.

ref (bak)

vscode #

ref digitalocean.com

tmate #

using a opensource relay server (can self-host)

tmate.io

Veyon.io #

After iTalc, free & open source.
See also: ControlAula, epoptes.

install #

Download os-related installer from veyon.io and install, e.g. dpkg -i asdf.deb.

config #

WARN: English is suggested as the GUI language, unicode may cause weird issues.

Firstly, generate a key pair in the “auth. keys”, any name is ok (e.g. “class01”) which will be used as THE_NAME of the session/group/class. Note that the name matters, canNOT be the same with other imported keys, and can only be chagned by deleting and (re-)importing.

  1. veyon configurator 》 for both student/client and teacher/controller:
    • General (常规) 》 authentication method (验证方法): key;
    • Service 》 VNC server 》 build in;
    • Access control (访问控制): allow users via any authentication methods (允许任何方式通过验证的用户访问) 【already default 默认应该就是这个选项】.
  2. veyon configurator 》 for students:
    • key 验证密钥 》 import the public keys (if not generated here), with THE_NAME;
    • key 验证密钥 》 set access group (设置访问组) 》 the current user’s group 当前登陆用户(的组);
    • service 服务 》 start service 开启服务 (the vnc service, actually)
  3. veyon configurator 》 for teacher:
    • key 验证密钥 》 import the private & public keys (if not generated here), with THE_NAME;
    • key 验证密钥 》 set access group (设置访问组) 》 the current user’s group 当前登陆用户(的组);
    • location & computers 地点及计算机 》 add a location with some computers (can use import/export in CLI);
    • service 服务 》 start service 开启服务 (the vnc service, actually)
  4. veyon master (teacher)
    • the teacher then can control clients.

export/import computers #

Note that the exporting does not guarantee the oder of locations vs. computers, so the import should seperate different locations.

Export by:
veyon-cli networkobjects export networkobjects-all.csv format "%type%,%name%,%host%,%mac%" && cat networkobjects-all.csv

Import by:
sudo veyon-cli networkobjects import networkobjects-floor7.csv location "floor7" format "%name%,%host%"