module_info()
Gibt detaillierte Lizenzinformationen für ein einzelnes Modul über
lic.LicGetModuleInfo zurück. Die Serverantwort wird in eine ECMModuleInfo-Instanz
geparst, die den Lizenztyp und die maximale Nutzerzahl enthält.
1. Signatur
-
Sync
-
Async
ecm.system.module_info(module: str) -> ECMModuleInfo
await ecm.system.module_info(module: str) -> ECMModuleInfo
2. Parameter
| Parameter | Typ | Standard | Beschreibung |
|---|---|---|---|
|
|
— |
Der abzufragende Modulname (z.B. |
3. Rückgabewert
Eine ECMModuleInfo-Instanz.
3.1. Felder von ECMModuleInfo
| Feld | Typ | Beschreibung |
|---|---|---|
|
|
Der abgefragte Modulname. |
|
|
Maximale Anzahl an Clients, die das Modul gleichzeitig nutzen können. |
|
|
Der Lizenztyp des Moduls. |
|
|
Der rohe, kommagetrennte Ergebnisstring vom Server. |
3.2. ECMLicenseType-Enum
| Mitglied | Wert | Beschreibung |
|---|---|---|
|
|
Das Modul kann von Clients der jeweiligen Arbeitsstationen genutzt werden, jedoch nur von einer bestimmten Anzahl ( |
|
|
Das Modul kann nur von Clients an bestimmten Arbeitsstationen genutzt werden. |
|
|
Das Modul kann ohne Arbeitsstations- oder Platzbeschränkungen genutzt werden. |
4. Ausnahmen
| Ausnahme | Bedingung |
|---|---|
|
Das Modul wurde in der Ressourcentabelle des Servers nicht gefunden. |
5. Beispiele
5.1. Modulinformationen abrufen
-
Sync
-
Async
info = ecm.system.module_info("ASC")
print(f"Module: {info.module}")
print(f"License type: {info.license_type.name}")
print(f"Max users: {info.max_use_count}")
info = await ecm.system.module_info("ASC")
print(f"Module: {info.module}")
print(f"License type: {info.license_type.name}")
print(f"Max users: {info.max_use_count}")
5.2. Lizenztyp vor Verwendung von check_license() prüfen
-
Sync
-
Async
from ecmind_blue_client.ecm import ECMLicenseType
info = ecm.system.module_info("ASC")
if info.license_type == ECMLicenseType.CONCURRENT:
# check_license() funktioniert nur für Concurrent-Lizenzen
result = ecm.system.check_license("ASC")
print(f"Licensed: {result[0].licensed}")
else:
print(f"Module uses {info.license_type.name} licensing — check_license() not applicable")
from ecmind_blue_client.ecm import ECMLicenseType
info = await ecm.system.module_info("ASC")
if info.license_type == ECMLicenseType.CONCURRENT:
result = await ecm.system.check_license("ASC")
print(f"Licensed: {result[0].licensed}")
else:
print(f"Module uses {info.license_type.name} licensing — check_license() not applicable")
6. Siehe auch
-
check_license() — Prüfen, ob Module lizenziert sind