### Automated Veyon Installation (Windows) Source: https://github.com/veyon/docs/blob/master/admin/installation.md This snippet demonstrates how to perform a silent installation of Veyon on Windows using the installer executable with the '/S' command-line parameter. This method is useful for automated deployments in large environments as it requires no user interaction. ```shell veyon-x.y.z-win64-setup.exe /S ``` -------------------------------- ### Automated Veyon Installation with Configuration Import (Windows) Source: https://github.com/veyon/docs/blob/master/admin/installation.md This snippet demonstrates a silent Veyon installation on Windows that also automatically imports and applies a specified configuration file (e.g., MyConfig.json). The '/ApplyConfig=' parameter is used for this purpose. ```shell veyon-x.y.z-win64-setup.exe /S /ApplyConfig=%cd%\MyConfig.json ``` -------------------------------- ### Automated Veyon Installation with Custom Directory (Windows) Source: https://github.com/veyon/docs/blob/master/admin/installation.md This snippet illustrates how to perform a silent installation of Veyon on Windows, specifying a custom installation directory using the '/D=' parameter. It's important to note that '/D=' must be the last argument due to an NSIS installer limitation. ```shell veyon-x.y.z-win64-setup.exe /S /D=C:\Veyon ``` -------------------------------- ### Demo Mode API Source: https://context7.com/veyon/docs/llms.txt Start or stop demonstration sessions on remote computers. Supports both teacher (server) and student (client) modes. ```APIDOC ## PUT /api/v1/feature/{featureUuid} ### Description Start or stop demonstration sessions on remote computers. ### Method PUT ### Endpoint /api/v1/feature/{featureUuid} ### Parameters #### Path Parameters - **featureUuid** (string) - Required - The UUID for the demo mode feature (e.g., e4b6e743-1f5b-491d-9364-e091086200f4 for teacher, 7b6231bd-eb89-45d3-af32-f70663b2f878 for student). #### Query Parameters None #### Request Body - **active** (boolean) - Required - Set to `true` to start demo mode, `false` to stop. - **arguments** (object) - Required - Contains demo session arguments. - **demoAccessToken** (string) - Required - The access token for the demo session. - **demoServerHost** (string) - Optional - The hostname or IP address of the demo server (required for student clients). ### Request Example (Start Demo Server - Teacher) ```json { "active": true, "arguments": { "demoAccessToken": "dGVhY2hlcjEyM2RlbW90b2tlbg==" } } ``` ### Request Example (Start Demo Client - Student) ```json { "active": true, "arguments": { "demoAccessToken": "dGVhY2hlcjEyM2RlbW90b2tlbg==", "demoServerHost": "192.168.1.5" } } ``` ### Request Example (Stop Demo Mode) ```json { "active": false, "arguments": {} } ``` ### Response #### Success Response (200) An empty JSON object `{}` is returned upon successful execution. ``` -------------------------------- ### Start Remote Feature Source: https://github.com/veyon/docs/blob/master/admin/cli.md Starts a specified feature on a remote host by connecting to the Veyon Server. Feature can be specified by name or UID. Additional arguments may be required, encoded as a JSON string. ```none veyon-cli feature start [] ``` -------------------------------- ### Set Single Configuration Key Source: https://github.com/veyon/docs/blob/master/admin/cli.md Writes a single configuration key by providing the key name and the desired value as arguments. Examples include setting port, autostart, and language. ```none veyon-cli config set Network/VeyonServerPort 12345 veyon-cli config set Service/Autostart true veyon-cli config set UI/Language de_DE ``` -------------------------------- ### Show Feature Details Source: https://github.com/veyon/docs/blob/master/admin/cli.md Displays a detailed table of all available features, including description, UID, plugin name, and implementation details. ```none veyon-cli feature show ``` -------------------------------- ### Filter Devices with StartsWith Function Source: https://github.com/veyon/docs/blob/master/addons/entra-id-connector.md This example demonstrates how to filter devices in Entra ID using the 'startsWith' function on the 'displayName' attribute. This is useful for selecting specific groups or objects based on a naming convention, such as identifying rooms in Veyon. ```text startsWith(displayName, 'Room') ``` -------------------------------- ### Get Single Configuration Key Source: https://github.com/veyon/docs/blob/master/admin/cli.md Reads a single configuration key by specifying its name as a parameter. Example: Network/VeyonServerPort. ```none veyon-cli config get Network/VeyonServerPort ``` -------------------------------- ### WebAPI: Launch Applications Source: https://context7.com/veyon/docs/llms.txt Launches applications on remote computers using the WebAPI. Can start single or multiple applications, with options to provide arguments and specific paths. Requires a valid Connection-Uid. ```bash # Start single application (UUID: da9ca56a-b2ad-4fff-8f8a-929b2927b442) curl -X PUT http://localhost:8080/api/v1/feature/da9ca56a-b2ad-4fff-8f8a-929b2927b442 \ -H "Connection-Uid: a1b2c3d4-e5f6-7890-abcd-ef1234567890" \ -H "Content-Type: application/json" \ -d '{ "active": true, "arguments": { "applications": ["notepad.exe"] } }' # Start multiple applications with arguments curl -X PUT http://localhost:8080/api/v1/feature/da9ca56a-b2ad-4fff-8f8a-929b2927b442 \ -H "Connection-Uid: a1b2c3d4-e5f6-7890-abcd-ef1234567890" \ -H "Content-Type: application/json" \ -d '{ "active": true, "arguments": { "applications": [ "C:\\Program Files\\Firefox\\firefox.exe https://example.com", "calc.exe", "notepad.exe C:\\Users\\Student\\document.txt" ] } }' ``` -------------------------------- ### Automated Veyon Uninstallation (Windows) Source: https://github.com/veyon/docs/blob/master/admin/installation.md This snippet shows how to silently uninstall Veyon from a Windows system using the uninstaller executable with the '/S' command-line parameter. This is beneficial for automated removal processes in managed environments. ```shell C:\Program Files\Veyon\uninstall.exe /S ``` -------------------------------- ### WebAPI: Control Demo Mode Source: https://context7.com/veyon/docs/llms.txt Initiates and stops demonstration sessions on remote computers using the WebAPI. Supports starting full-screen or windowed demos for teachers and students. Requires demo access tokens and optionally the demo server host. ```bash # Start demo server on teacher computer (UUID: e4b6e743-1f5b-491d-9364-e091086200f4) curl -X PUT http://localhost:8080/api/v1/feature/e4b6e743-1f5b-491d-9364-e091086200f4 \ -H "Connection-Uid: teacher-connection-uid" \ -H "Content-Type: application/json" \ -d '{ "active": true, "arguments": { "demoAccessToken": "dGVhY2hlcjEyM2RlbW90b2tlbg==" } }' # Start full-screen demo client on student computer (UUID: 7b6231bd-eb89-45d3-af32-f70663b2f878) curl -X PUT http://localhost:8080/api/v1/feature/7b6231bd-eb89-45d3-af32-f70663b2f878 \ -H "Connection-Uid: student-connection-uid" \ -H "Content-Type: application/json" \ -d '{ "active": true, "arguments": { "demoAccessToken": "dGVhY2hlcjEyM2RlbW90b2tlbg==", "demoServerHost": "192.168.1.5" } }' # Stop demo mode curl -X PUT http://localhost:8080/api/v1/feature/7b6231bd-eb89-45d3-af32-f70663b2f878 \ -H "Connection-Uid: student-connection-uid" \ -H "Content-Type: application/json" \ -d '{ "active": false, "arguments": {} }' ``` -------------------------------- ### List Configuration Defaults or Types Source: https://github.com/veyon/docs/blob/master/admin/cli.md Lists all configuration keys and their values. Can also display default values or data types by specifying 'defaults' or 'types' respectively. ```none veyon-cli config list defaults veyon-cli config list types ``` -------------------------------- ### WebAPI: Get User and Session Information Source: https://context7.com/veyon/docs/llms.txt Retrieves current user and session details from a remote computer using the WebAPI. Supports GET requests to the /api/v1/user endpoint, requiring a Connection-Uid. Returns login and full name of the logged-in user or empty strings if no user is logged in. ```bash # Get current user information curl -X GET http://localhost:8080/api/v1/user \ -H "Connection-Uid: a1b2c3d4-e5f6-7890-abcd-ef1234567890" # Response (user logged in): # { "login": "student01", "fullName": "John Doe" } # Response (no user logged in): # { "login": "", "fullName": "" } ``` -------------------------------- ### GET /api/v1/session Source: https://github.com/veyon/docs/blob/master/developer/webapi.md Retrieves information about the current session, including session ID, uptime, client address, client name, and host name. ```APIDOC ## GET /api/v1/session ### Description Retrieves information about the current session, including session ID, uptime, client address, client name, and host name. ### Method GET ### Endpoint /api/v1/session ### Parameters #### Path Parameters None #### Query Parameters None #### Request Body None ### Request Example None ### Response #### Success Response (200) - **sessionId** (integer) - an integer representing the session ID assigned by the Veyon Service - to be used as offset to the server ports to access the corresponding session server - **sessionUptime** (integer) - the number of seconds that elapsed since the session has been opened (e.g. user logon time) - **sessionClientAddress** (string) - the host/IP address of the client which is connected to the session (e.g. the host running an RDP client) - **sessionClientName** (string) - the name the client which is connected to the session (e.g. the host running an RDP client) - **sessionHostName** (string) - the name of the host on which the session is running, usually the local hostname #### Response Example { "sessionId": 12345, "sessionUptime": 3600, "sessionClientAddress": "192.168.1.100", "sessionClientName": "CLIENT-PC", "sessionHostName": "VEYON-MASTER" } ``` -------------------------------- ### List Veyon CLI Modules Source: https://github.com/veyon/docs/blob/master/admin/cli.md Displays a list of all available modules for the Veyon CLI. The exact list may vary based on installed Veyon plugins. This command is useful for understanding the CLI's capabilities. ```bash $ veyon-cli help Available modules: authkeys - Commands for managing authentication keys config - Commands for managing the configuration of Veyon ldap - Commands for configuring and testing LDAP/AD integration networkobjects - Commands for managing the builtin network object directory power - Commands for controlling power status of computers remoteaccess -

Remote view or control a computer

service - Commands for configuring and controlling Veyon Service shell - Commands for shell functionalities ``` -------------------------------- ### Feature Control CLI Source: https://github.com/veyon/docs/blob/master/admin/cli.md Commands for managing features on remote computers, including listing, showing details, starting, and stopping features. ```APIDOC ## `feature list` ### Description Displays a list with the names of all available features. ### Method CLI Command ### Endpoint `veyon-cli feature list` ## `feature show` ### Description Displays a table with detailed information about all available features, including description, UID, plugin name, and implementation details. ### Method CLI Command ### Endpoint `veyon-cli feature show` ## `feature start []` ### Description Starts the specified feature on the specified host by connecting to the Veyon Server. The feature can be identified by name or UID. Additional arguments, if required, must be encoded as a single JSON string. ### Method CLI Command ### Endpoint `veyon-cli feature start []` ### Parameters #### Path Parameters - **FEATURE** (string) - Required - The name or UID of the feature to start. - **HOST_ADDRESS** (string) - Required - The address of the host where the feature should be started. - **ARGUMENTS** (string) - Optional - Additional arguments for the feature, encoded as a JSON string. ### Request Example ```none veyon-cli feature start "RemoteSession" "192.168.1.100" "{\"display\": \":0\"}" ``` ## `feature stop ` ### Description Stops the specified feature on the specified host by connecting to the Veyon Server. The feature can be identified by name or UID. ### Method CLI Command ### Endpoint `veyon-cli feature stop ` ### Parameters #### Path Parameters - **FEATURE** (string) - Required - The name or UID of the feature to stop. - **HOST_ADDRESS** (string) - Required - The address of the host where the feature should be stopped. ### Request Example ```none veyon-cli feature stop "RemoteSession" "192.168.1.100" ``` ```