AI prompts
base on Cross-platform computer monitoring and classroom management # Veyon - Virtual Eye On Networks
[![.github/workflows/build.yml](https://github.com/veyon/veyon/actions/workflows/build.yml/badge.svg)](https://github.com/veyon/veyon/actions/workflows/build.yml)
[![Latest stable release](https://img.shields.io/github/release/veyon/veyon.svg?maxAge=3600)](https://github.com/veyon/veyon/releases)
[![Overall downloads on Github](https://img.shields.io/github/downloads/veyon/veyon/total.svg?maxAge=3600)](https://github.com/veyon/veyon/releases)
[![Documentation Status](https://readthedocs.org/projects/veyon/badge/?version=latest)](https://docs.veyon.io/)
[![Localise on Transifex](https://img.shields.io/badge/localise-on_transifex-green.svg)](https://www.transifex.com/veyon-solutions/veyon/)
[![license](https://img.shields.io/badge/license-GPLv2-green.svg)](LICENSE)
## What is Veyon?
Veyon is a free and open source software for monitoring and controlling
computers across multiple platforms. Veyon supports you in teaching in digital
learning environments, performing virtual trainings or giving remote support.
The following features are available in Veyon:
* Overview: monitor all computers in one or multiple locations or classrooms
* Remote access: view or control computers to watch and support users
* Demo: broadcast the teacher's screen in realtime (fullscreen/window)
* Screen lock: draw attention to what matters right now
* Communication: send text messages to students
* Start and end lessons: log in and log out users all at once
* Screenshots: record learning progress and document infringements
* Programs & websites: launch programs and open website URLs remotely
* Teaching material: distribute and open documents, images and videos easily
* Administration: power on/off and reboot computers remotely
## License
Copyright (c) 2004-2024 Tobias Junghans / Veyon Solutions.
See the file COPYING for the GNU GENERAL PUBLIC LICENSE.
## Installation and configuration
Please refer to the official Veyon Administrator Manual at https://docs.veyon.io/en/latest/admin/index.html
for information on the installation and configuration of Veyon.
## Usage
Please refer to the official Veyon User Manual at https://docs.veyon.io/en/latest/user/index.html
for information on how to use Veyon.
## Veyon on Linux
### Downloading sources
First grab the latest sources by cloning the Git repository and fetching all submodules:
git clone --recursive https://github.com/veyon/veyon.git && cd veyon
### Installing dependencies
Requirements for Debian-based distributions:
- Build tools: g++ libc6-dev make cmake dpkg-dev
- Qt5: qtbase5-dev qtbase5-private-dev qtbase5-dev-tools qttools5-dev qttools5-dev-tools qtdeclarative5-dev qtquickcontrols2-5-dev
- X11: xorg-dev libxtst-dev libfakekey-dev
- libjpeg: libjpeg-dev provided by libjpeg-turbo8-dev or libjpeg62-turbo-dev
- zlib: zlib1g-dev
- OpenSSL: libssl-dev
- PAM: libpam0g-dev
- procps: libprocps-dev
- LZO: liblzo2-dev
- QCA: libqca-qt5-2-dev
- LDAP: libldap2-dev
- SASL: libsasl2-dev
As root you can run
apt install g++ libc6-dev make cmake qtbase5-dev qtbase5-private-dev \
qtbase5-dev-tools qttools5-dev qttools5-dev-tools \
qtdeclarative5-dev qtquickcontrols2-5-dev libfakekey-dev \
xorg-dev libxtst-dev libjpeg-dev zlib1g-dev libssl-dev libpam0g-dev \
libprocps-dev liblzo2-dev libqca-qt5-2-dev libldap2-dev \
libsasl2-dev ninja-build
Requirements for RedHat-based distributions:
- Build tools: gcc-c++ make cmake rpm-build
- Qt5: qt5-devel qt5-qtbase-private-devel
- X11: libXtst-devel libXrandr-devel libXinerama-devel libXcursor-devel libXrandr-devel libXdamage-devel libXcomposite-devel libXfixes-devel libfakekey-devel
- libjpeg: libjpeg-turbo-devel
- zlib: zlib-devel
- OpenSSL: openssl-devel
- PAM: pam-devel
- procps: procps-devel
- LZO: lzo-devel
- QCA: qca-devel qca-qt5-devel
- LDAP: openldap-devel
- SASL: cyrus-sasl-devel
As root you can run
dnf install gcc-c++ make cmake rpm-build qt5-devel libXtst-devel libXrandr-devel libXinerama-devel libXcursor-devel \
libXrandr-devel libXdamage-devel libXcomposite-devel libXfixes-devel libfakekey-devel libjpeg-turbo-devel zlib-devel \
openssl-devel pam-devel procps-devel lzo-devel qca-devel qca-qt5-devel openldap-devel cyrus-sasl-devel ninja-build
### Configuring and building sources
Run the following commands:
mkdir build
cd build
cmake ..
make -j4
NOTE: If you want to build a .deb or .rpm package for this software, instead of the provided cmake command, you should use:
cmake -DCMAKE_INSTALL_PREFIX=/usr ..
to install package files in /usr instead of /usr/local.
If some requirements are not fullfilled, CMake will inform you about it and
you will have to install the missing software before continuing.
You can now generate a package (.deb or .rpm depending what system you are in).
For generating a package you can run
fakeroot make package
Then you'll get something like veyon_x.y.z_arch.deb or veyon-x.y.z.arch.rpm
Alternatively you can install the built binaries directly (not recommended for
production systems) by running the following command as root:
make install
### Arch linux
A PKGBUILD can be found in the [AUR](https://aur.archlinux.org/packages/veyon/).
### PPA
This PPA contains official Veyon packages for Ubuntu suitable for use both on desktop computers and ARM boards (e.g. Raspberry Pi). Even though only packages for LTS releases are available they should work for subsequent non-LTS releases as well.
sudo add-apt-repository ppa:veyon/stable
sudo apt-get update
### openSUSE
Veyon is available on official openSUSE Tumbleweed repository.
sudo zypper in veyon
For openSUSE Leap 15.2, use the unofficial package from Education repository.
https://software.opensuse.org/package/veyon?search_term=veyon
## Join development
If you are interested in Veyon, its programming, artwork, testing or something like that, you're welcome to participate in the development of Veyon!
Before starting the implementation of a new feature, please always open an issue at https://github.com/veyon/veyon/issues to start a discussion about your intended implementation. There may be different ideas, improvements, hints or maybe an already ongoing work on this feature.
## Join translation team
Veyon and its documentation are translated at the Transifex platform. Please go to https://www.transifex.com/veyon-solutions/veyon and join the corresponding translation team. Please DO NOT submit pull requests for modified translation files since this would require manual Transifex synchronizations on our side.
## More information
* https://veyon.io/
* https://docs.veyon.io/
* https://facebook.com/veyon.io/
* https://twitter.com/veyon_io
", Assign "at most 3 tags" to the expected json: {"id":"8058","tags":[]} "only from the tags list I provide: [{"id":77,"name":"3d"},{"id":89,"name":"agent"},{"id":17,"name":"ai"},{"id":54,"name":"algorithm"},{"id":24,"name":"api"},{"id":44,"name":"authentication"},{"id":3,"name":"aws"},{"id":27,"name":"backend"},{"id":60,"name":"benchmark"},{"id":72,"name":"best-practices"},{"id":39,"name":"bitcoin"},{"id":37,"name":"blockchain"},{"id":1,"name":"blog"},{"id":45,"name":"bundler"},{"id":58,"name":"cache"},{"id":21,"name":"chat"},{"id":49,"name":"cicd"},{"id":4,"name":"cli"},{"id":64,"name":"cloud-native"},{"id":48,"name":"cms"},{"id":61,"name":"compiler"},{"id":68,"name":"containerization"},{"id":92,"name":"crm"},{"id":34,"name":"data"},{"id":47,"name":"database"},{"id":8,"name":"declarative-gui "},{"id":9,"name":"deploy-tool"},{"id":53,"name":"desktop-app"},{"id":6,"name":"dev-exp-lib"},{"id":59,"name":"dev-tool"},{"id":13,"name":"ecommerce"},{"id":26,"name":"editor"},{"id":66,"name":"emulator"},{"id":62,"name":"filesystem"},{"id":80,"name":"finance"},{"id":15,"name":"firmware"},{"id":73,"name":"for-fun"},{"id":2,"name":"framework"},{"id":11,"name":"frontend"},{"id":22,"name":"game"},{"id":81,"name":"game-engine "},{"id":23,"name":"graphql"},{"id":84,"name":"gui"},{"id":91,"name":"http"},{"id":5,"name":"http-client"},{"id":51,"name":"iac"},{"id":30,"name":"ide"},{"id":78,"name":"iot"},{"id":40,"name":"json"},{"id":83,"name":"julian"},{"id":38,"name":"k8s"},{"id":31,"name":"language"},{"id":10,"name":"learning-resource"},{"id":33,"name":"lib"},{"id":41,"name":"linter"},{"id":28,"name":"lms"},{"id":16,"name":"logging"},{"id":76,"name":"low-code"},{"id":90,"name":"message-queue"},{"id":42,"name":"mobile-app"},{"id":18,"name":"monitoring"},{"id":36,"name":"networking"},{"id":7,"name":"node-version"},{"id":55,"name":"nosql"},{"id":57,"name":"observability"},{"id":46,"name":"orm"},{"id":52,"name":"os"},{"id":14,"name":"parser"},{"id":74,"name":"react"},{"id":82,"name":"real-time"},{"id":56,"name":"robot"},{"id":65,"name":"runtime"},{"id":32,"name":"sdk"},{"id":71,"name":"search"},{"id":63,"name":"secrets"},{"id":25,"name":"security"},{"id":85,"name":"server"},{"id":86,"name":"serverless"},{"id":70,"name":"storage"},{"id":75,"name":"system-design"},{"id":79,"name":"terminal"},{"id":29,"name":"testing"},{"id":12,"name":"ui"},{"id":50,"name":"ux"},{"id":88,"name":"video"},{"id":20,"name":"web-app"},{"id":35,"name":"web-server"},{"id":43,"name":"webassembly"},{"id":69,"name":"workflow"},{"id":87,"name":"yaml"}]" returns me the "expected json"