[GELÖST] Veyon Add-ons-Paket

Fragen zu WAPT-Paketen / Anfragen und Hilfe bezüglich WAPT-Paketen.
Forumregeln
Community-Forumregeln
* Englischer Support auf www.reddit.com/r/wapt
* Französischer Community-Support ist in diesem Forum verfügbar.
* Bitte kennzeichnen Sie gelöste Themen mit [GELÖST].
* Bitte bearbeiten Sie keine Themen, die mit [GELÖST] markiert sind. Erstellen Sie stattdessen ein neues Thema und verweisen Sie auf das alte.
* Geben Sie die installierte WAPT-Version, die vollständige Versionsnummer und die Build-Nummer (2.2.1.11957 / 2.2.2.12337 / usw.) sowie die Enterprise-/Discovery-Edition an.
* Versionen 1.8.2 und älter werden nicht mehr unterstützt. Fragen zu Version 1.8.2 werden nur beantwortet, wenn sie sich auf ein Upgrade auf eine unterstützte Version (2.1, 2.2 usw.) beziehen.
* Geben Sie das Server-Betriebssystem (Linux/Windows) und die Version (Debian Buster/Bullseye – CentOS 7 – Windows Server 2012/2016/2019) an.
* Geben Sie gegebenenfalls das Betriebssystem des Administrations-/Paketerstellungsrechners und des Rechners mit dem problematischen Agenten an (Windows 7/10/11/Debian 11/etc.).
* Vermeiden Sie es, mehrere Fragen in einem Thema zu stellen, da diese sonst möglicherweise ignoriert werden. Falls mehrere Themen relevant sind, erstellen Sie bitte separate Themen, vorzugsweise nacheinander und nicht gleichzeitig (d. h. vermeiden Sie Spam im Forum).
* Fügen Sie Code-Snippets, Screenshots und andere Bilder direkt in Ihren Beitrag ein. Links zu Pastebin, Bitly und anderen Drittanbieterseiten werden systematisch entfernt.
* Wie in jedem Community-Forum erfolgt die Unterstützung freiwillig durch die Mitglieder. Für kommerziellen Support kontaktieren Sie bitte den Vertrieb von Tranquil IT unter +44 2 40 97 57 55.
Gesperrt
lfkl
Nachrichten: 32
Anmeldung: 11. April 2019 - 05:51 Uhr

9. Juni 2026 - 04:07 Uhr

Guten Morgen,

Wir nutzen Veyon aktiv und alles funktioniert.
Wir werden bestimmte Zusatzmodule von Veyon erwerben.
Hierfür ist die Installation des Plugins erforderlich: veyon-addons-4.10.4.0-win64-setup.exe
Siehe Dokument:
https://veyon.io/en/addons/

Im Folgenden stelle ich ein Paket vor, das zwar sicherlich nicht besonders gut programmiert ist, aber funktioniert:

Code: Alle auswählen

# -*- coding: utf-8 -*-
from setuphelpers import *

r"""
Usable WAPT package functions: install(), uninstall(), session_setup(), audit(), update_package()

"""
# Declaring global variables - Warnings: 1) WAPT context is only available in package functions; 2) Global variables are not persistent between calls

def install():
    bin_name = glob.glob("veyon-addons-*.exe")[0]
    silentflags = "/S"
    install_exe_if_needed(
        bin_name,
        silentflags=silentflags,
        key="",
        min_version=control.get_software_version(),
        timeout=300,
    )
Falls dieses Paket jemals optimiert und mit "update.py" im Wapt Store verfügbar gemacht werden könnte, wäre das hier sehr zu begrüßen ;)

Guten Tag.
Zuletzt bearbeitet von lfkl am 15. Juni 2026 um 04:24 Uhr, 2 Mal bearbeitet.
italbot
Nachrichten: 70
Anmeldung: 26. September 2023 - 15:50 Uhr

9. Juni 2026 - 09:31 Uhr

Hallo,

ich schaue mir das an. Sollte dieses Paket also idealerweise als Abhängigkeit des tis-veyon-Pakets hinzugefügt werden?

Viele Grüße,

Ingrid
Ruhige IT
lfkl
Nachrichten: 32
Anmeldung: 11. April 2019 - 05:51 Uhr

9. Juni 2026 - 10:33 Uhr

Hallo Ingrid,

vielen Dank!

Wichtig ist, dass die Pakete „tis-veyon“ und „tis-add-on-veyon“ laut Dokumentation dieselbe Versionsnummer haben; andernfalls besteht die Gefahr von Inkompatibilität.

Ich habe den Veyon-Entwickler kontaktiert, und er teilte mir mit, dass dieses Add-on-Paket nur auf Client- und Master-Workstation-Seite benötigt wird und die spezifische „Veyon-Installations-ID“-Lizenz der Institution enthalten muss.
Es ist also möglicherweise keine Abhängigkeit, da andere Institutionen möglicherweise nicht dieselbe Wahl treffen wie wir, und die spezifische Lizenz der Institution muss ebenfalls in diesem Paket enthalten sein.

Dies ist jedoch kein Ausschlusskriterium; selbst ohne Lizenz ermöglicht es, falls als Abhängigkeit angegeben, lediglich das Hinzufügen von Demofunktionen.

Ich wünsche Ihnen einen schönen Tag!
italbot
Nachrichten: 70
Anmeldung: 26. September 2023 - 15:50 Uhr

9. Juni 2026 - 10:43 Uhr

Okay, wenn es dieselbe Version sein muss, werde ich es nicht als Abhängigkeit festlegen.
Ich melde mich, sobald ich es gepackt habe.

Viele Grüße,

Ingrid
Ruhige IT
italbot
Nachrichten: 70
Anmeldung: 26. September 2023 - 15:50 Uhr

9. Juni 2026 – 17:37 Uhr

Die Funktion update_package() funktioniert einwandfrei. Gibt es jedoch eine Möglichkeit festzustellen, wann diese Add-ons installiert oder deinstalliert werden?

Mit freundlichen Grüßen,

Ingrid
Ruhige IT
lfkl
Nachrichten: 32
Anmeldung: 11. April 2019 - 05:51 Uhr

10. Juni 2026 - 04:00 Uhr

Gibt es jedoch keine Möglichkeit festzustellen, wann diese Add-ons installiert oder deinstalliert werden?
Tatsächlich habe ich weder über die Windows-Systemsteuerung eine Deinstallationsoption gefunden (nach der Installation gibt es keinen Eintrag) noch einen Registrierungsschlüssel über den Befehl wapt-get list-registry...

Mir ist lediglich aufgefallen, dass nach der Installation einer neueren Version von "Veyon" die zugehörigen Plugins aus dem "Veyon Configurator" verschwinden, bis die neuere Version der "Veyon-Add-ons" neu installiert wird

In unserer Einrichtung haben wir uns dafür entschieden, unterschiedliche Veyon-Pakete zu erstellen, je nachdem, ob "Veyon Master" installiert ist oder nicht.
Beispiele:
Veyon-cdi-profs, Veyon-maths-profs, Veyon-labs-profs usw. installieren "Veyon Master".
Es wird jedoch nicht dem Paket "veyon-eleves" zugeordnet

Letztendlich ist es kein unüberwindbares Problem; wir können "Veyon adds-on" als Abhängigkeit der "Veyons-xxx-profs"-Pakete festlegen, wir müssen nur sicherstellen, dass wir für unsere Pakete die gleiche Version haben.

Beste grüße.
italbot
Nachrichten: 70
Anmeldung: 26. September 2023 - 15:50 Uhr

11. Juni 2026 - 12:23 Uhr

Guten Morgen,

Ich sende Ihnen den Code, den ich für `update_package()` und die Installation geschrieben habe, sowie eine Pseudo-Deinstallation. Ich habe zwar einen Registry-Schlüssel für die Add-ons gefunden, dieser entfernt aber nicht die im Veyon-Ordner installierten Dateien. Ich habe versucht, die Installation mit `audit()` zu überprüfen, indem ich die Dateien mit den standardmäßig in Veyon installierten verglichen habe. Ich bezweifle jedoch, dass diese Dateien in zukünftigen Versionen gleich bleiben. Daher werden wir intern besprechen, ob wir das Add-on im Store anbieten. Sie können das Paket aber zumindest selbst mit dem unten stehenden Code erstellen:

Code: Alle auswählen

from setuphelpers import *

def update_package():
    # Declaring local variables
    package_updated = False
    proxies = get_proxies()
    if not proxies:
        proxies = get_proxies_from_wapt_console()
    update_dict = {"windows": ".exe"}
    url = "https://veyon.io/en/addons/#download"

    # Getting latest version information from official sources
    print("API used is: %s" % url)
    for bs_search in bs_find_all(url, "a", "class", "btn btn-dl btn-primary", proxies=proxies):
        if "setup.exe" in bs_search["href"]:
            download_url = bs_search["href"]
            latest_bin = download_url.split("/")[-1]
            version = latest_bin.split("-",3)[2]
            break

    # Downloading latest binaries
    print(f"Latest version of {control.name} is: {version}")
    print("Download URL is: %s" % download_url)
    if not isfile(latest_bin):
        print("Downloading: %s" % latest_bin)
        wget(download_url, latest_bin, proxies=proxies)
    else:
        print("Binary is present: %s" % latest_bin)

    # Changing version of the package
    if Version(version) > Version(control.get_software_version()):
        print(f"Software version updated (from: {control.get_software_version()} to: {Version(version)})")
        package_updated = True
    else:
        print(f"Software version up-to-date ({Version(version)})")

    # Deleting binaries
    for f in glob.glob("*.exe"):
        if f != latest_bin:
            remove_file(f)
    
    control.set_software_version(version)
    control.save_control_to_wapt()

    return package_updated

Code: Alle auswählen

# -*- coding: utf-8 -*-
from setuphelpers import *


def install():
    # Declaring local variables
    bin_name = glob.glob("veyon-addons-*-win64-setup.exe")[0]

    # Installing the software
    print("Installing: %s" % bin_name)
    install_exe_if_needed(
        bin_name,
        silentflags="/S",
        key="",
        min_version=control.get_software_version(),
    )


def audit() : 

    files_list = ["auvidus.dll","chat.dll", "entraidconnector.dll", "internetaccesscontrol.dll", "internetaccesscontrol-firewall.dll", "internetaccesscontrol-routing.dll", "licensing.dll", "network-discovery.dll", "screenrecorder.dll"]
    
    if isdir(makepath(programfiles, "Veyon", "plugins")) : 
        common_elements = set(files_list) - set(os.listdir(makepath(programfiles, "Veyon", "plugins")))
        if list(sorted(common_elements)) == sorted(files_list): 
            result =  "OK"
        else : result = "ERROR"
    else : 
        result = "ERROR"

    return result


def uninstall() : 

    if reg_key_exists(HKEY_LOCAL_MACHINE, makepath("SOFTWARE", "WOW6432Node", r"Veyon Solutions")) :
        registry_deletekey(HKEY_LOCAL_MACHINE, makepath("SOFTWARE", "WOW6432Node"), r"Veyon Solutions", recursive = True)
Guten Tag.

Aufrichtig,

Ingrid
Ruhige IT
lfkl
Nachrichten: 32
Anmeldung: 11. April 2019 - 05:51 Uhr

12. Juni 2026 - 05:55 Uhr

Hallo Ingrid,

Vielen Dank für dieses Paket und die setup.py-Datei, sie funktioniert hervorragend für die Installation und Aktualisierung.

Die Prüfung ist jedoch fehlerhaft:

Code: Alle auswählen

Installing: veyon-addons-4.10.4.0-win64-setup.exe
Installing: veyon-addons-4.10.4.0-win64-setup.exe (4.10.4.0)
Nach Überprüfung des Verzeichnisses „C:\Program Files\Veyon\plugins“ sind tatsächlich alle Plugin-Dateien vorhanden:

Code: Alle auswählen

files_list = ["auvidus.dll","chat.dll", "entraidconnector.dll", "internetaccesscontrol.dll", "internetaccesscontrol-firewall.dll", "internetaccesscontrol-routing.dll", "licensing.dll", "network-discovery.dll", "screenrecorder.dll"]
Zusätzlich zu den von Veyon installierten Basisfunktionen.

Die Deinstallation scheint jedoch nicht zu funktionieren, aber in unserem Fall ist das nicht weiter schlimm.

Vielen Dank und einen schönen Tag noch.
italbot
Nachrichten: 70
Anmeldung: 26. September 2023 - 15:50 Uhr

12. Juni 2026 - 11:31 Uhr

Guten Morgen,

Können Sie die Prüfung mit diesem Skript erneut testen?

Code: Alle auswählen

def audit() : 

    files_list = ["auvidus.dll","chat.dll", "entraidconnector.dll", "internetaccesscontrol.dll", "internetaccesscontrol-firewall.dll", "internetaccesscontrol-routing.dll", "licensing.dll", "network-discovery.dll", "screenrecorder.dll"]

    files_list = sorted(files_list)
    
    if isdir(makepath(programfiles, "Veyon", "plugins")) : 
        installed_files_list = sorted(os.listdir(makepath(programfiles, "Veyon", "plugins")))
        common_elements = set(files_list).intersection(installed_files_list)
        if sorted(common_elements) == sorted(files_list): 
            result =  "OK"
        else : result = "ERROR"

    else : 
        result = "ERROR"

    return result
Was die Deinstallation betrifft, deshalb zögere ich, ein solches Paket im Store anzubieten. Man könnte zwar die Option zum Entfernen installierter Dateien hinzufügen, aber ich vermute, dass sich das im Laufe der Zeit ändern wird.

Aufrichtig,

Ingrid
Ruhige IT
lfkl
Nachrichten: 32
Anmeldung: 11. April 2019 - 05:51 Uhr

15. Juni 2026 - 04:23 Uhr

Guten Morgen,

Die Prüfung funktioniert nun gut, da die Dateien klassifiziert werden.
files_list = sorted(files_list)
Vielen Dank für Ihre Hilfe bei diesem Paket und einen schönen Tag noch!
Gesperrt