SDK und API
HDX™ SDK
Die Citrix Workspace-App für ChromeOS führt eine API (Experimentelle API) ein, die Drittanbieter-Chrome-Apps ermöglicht, sich zu sperren, zu entsperren und die Verbindung zu trennen von:
- Citrix Virtual Apps und Desktops
- Citrix DaaS (ehemals Citrix Virtual Apps and Desktops Service)-Sitzung
Mit dieser API können Sie die Citrix Workspace-App für ChromeOS sowohl im eingebetteten Modus als auch im Kioskmodus starten. Im eingebetteten Modus gestartete Sitzungen funktionieren ähnlich wie im Kioskmodus gestartete Sitzungen.
Die SDK-Dokumentation finden Sie unter HDX SDK für Citrix Workspace-App für ChromeOS.
Beispiele für das HDX SDK finden Sie auf der Citrix Download-Seite.
Verbesserungen an den Chrome HDX SDK APIs
Zuvor hatten externe Apps mit der HDX SDK für ChromeOS-Integration keine Einsicht in Sitzungen, die über andere Methoden als das SDK gestartet wurden.
Ab Version 2408 bieten die neuen Verbesserungen am Chrome HDX SDK die Möglichkeit, alle aktiven Sitzungen zu identifizieren, bestimmte Sitzungen zu trennen, alle aktiven Sitzungen zu trennen und den Benutzer von allen Stores in der Citrix Workspace™-App abzumelden (nur lokale Stores).
Weitere Informationen zur Verwendung von APIs finden Sie unter Sitzungen aufzählen.
Citrix Virtual Channel SDK
Das Citrix Virtual Channel Software Development Kit (SDK) unterstützt Sie beim Schreiben von serverseitigen Anwendungen und clientseitigen Treibern für zusätzliche virtuelle Kanäle unter Verwendung des ICA®-Protokolls.
Die serverseitigen virtuellen Kanalanwendungen befinden sich auf Citrix Virtual Apps- oder Citrix Virtual Apps and Desktops-Servern. Diese Version des SDK unterstützt Sie beim Schreiben neuer virtueller Kanäle für die Citrix Workspace-App für ChromeOS. Wenn Sie virtuelle Treiber für andere Clientplattformen schreiben möchten, wenden Sie sich an Citrix.
Das Virtual Channel SDK bietet:
-
Eine einfache Schnittstelle, die mit den virtuellen Kanälen im Citrix Server API SDK (WFAPI SDK) verwendet werden kann, um neue virtuelle Kanäle zu erstellen.
-
Funktionierenden Quellcode für mehrere Beispielprogramme für virtuelle Kanäle, die Programmiertechniken demonstrieren.
-
Das Virtual Channel SDK erfordert das WFAPI SDK, um die Serverseite des virtuellen Kanals zu schreiben.
Die Dokumentation zum VC SDK finden Sie unter Citrix Virtual Channel SDK für Citrix Workspace-App für ChromeOS.
Bekanntes Problem in der Funktion
Wenn Sie ChromeOS Version 146 oder höher verwenden, funktionieren benutzerdefinierte virtuelle Kanäle, die mit früheren Versionen des Citrix Virtual Channel SDK erstellt wurden, möglicherweise nicht wie erwartet, wenn Sie sie mit einer Manifest V3 Chrome-Erweiterung verwenden. Kompatibilitätsprobleme zwischen Manifest V3 und dem Verhalten der Chrome-Erweiterungs-API verursachen das Problem. Wir empfehlen, auf die neueste VCSDK 2603-Version von der Citrix Downloads-Seite zu aktualisieren, um ein reibungsloses Virtual Channels-Erlebnis zu gewährleisten. [RFHTMCRM-17807]
Verbesserungen am Virtual Channel SDK
Ab Version 2305 unterstützt die Citrix Workspace-App für ChromeOS Window Management APIs im Virtual Channel SDK. Web-APIs ermöglichen es IT-Administratoren, interaktive Anwendungen zu erstellen und diese für ihre Endbenutzer anzupassen.
Verfahren zur Nutzung der API in der Chrome-App eines Drittanbieters
- Installieren Sie die neueste Version der Citrix Workspace-App für ChromeOS. Weitere Informationen finden Sie auf der Seite Citrix Downloads.
-
Fügen Sie die Chrome-App eines Drittanbieters zur Zulassungsliste hinzu, indem Sie die Richtliniendatei für die Citrix Workspace-App für ChromeOS hinzufügen. Verwenden Sie die Chrome-Verwaltungseinstellungen, um die Richtlinie hinzuzufügen.
Weitere Informationen finden Sie unter Chrome-Apps nach Organisationseinheit verwalten im Google-Support.
Um die Chrome-App eines Drittanbieters zur Zulassungsliste hinzuzufügen, finden Sie hier die Beispiel-
policy.txt-JSON-Daten:{ "settings": { "Value": { "settings_version": "1.0", "store_settings": { "externalApps": [“<3rdParty_App1_ExtnID>”,“<3rdParty_App2_ExtnID>”] } } } } <!--NeedCopy-->Hinweis:
<3rdParty_App1_ExtnID>wird als Beispiel für den Namen von externalApps verwendet und kann Nachrichten an die Citrix Workspace-App für ChromeOS senden. Rufen Sie Ihre appid von der Website chrome://extensions ab. - Starten Sie die Anwendung oder eine Desktopsitzung in Citrix Workspace für ChromeOS wie folgt:
-
Rufen Sie die workspaceappID ab
var workspaceappID = " haiffjcadagjlijoggckpgfnoeiflnem ";;Hinweis:
In diesem Beispiel gibt workspaceappID die Store-Version der Citrix Workspace-App für ChromeOS an. Wenn Sie eine neu verpackte Version der Citrix Workspace-App für ChromeOS verwenden, verwenden Sie die entsprechende workspaceappID.
-
Konvertieren Sie ICA-Daten von INI in das JSON-Format.
Hinweis:
Typischerweise wird die ICA-Datei von StoreFront als INI-Datei abgerufen. Verwenden Sie die folgende Hilfsfunktion, um eine ICA-INI-Datei in JSON zu konvertieren.
//Helper function to convert ica in INI format to JSON function convertICA_INI_TO_JSON(data){ var keyVals = {}; if (data) { var dataArr; if(data.indexOf('\r')==-1){ dataArr = data.split('\n'); }else{ dataArr = data.split('\r\n'); } for (var i = 0; i \< dataArr.length; i++) { var nameValue = dataArr[i].split('=', 2); if (nameValue.length === 2) { keyVals[nameValue[0]] = nameValue[1]; } // This is required as LaunchReference contains '=' as well. The above split('=',2) will not provide // the complete LaunchReference. Ideally, something like the following should be used generically as well // because there can be other variables that use the '=' character as part of the value. if (nameValue[0] === "LaunchReference") { var index = dataArr[i].indexOf('='); var value = dataArr[i].substr(index + 1); keyVals[nameValue[0]] = value; } } console.log(keyVals);//to remove return keyVals; } return null; } <!--NeedCopy--> -
Senden Sie eine ICA-Nachricht von der Chrome-App eines Drittanbieters an die Citrix Workspace-App für ChromeOS.
var icaFileJson = {...}; // ICA file passed as JSON key value pairs. var message = { "method" : "launchSession", "icaData" : icaJSON }; chrome.runtime.sendMessage(workspaceappID, message, function(launchStatus) { if (launchStatus.success) { // handle success. console.log("Session launch was attempted successfully"); } else { // handle errors. console.log("error during session launch: ", launchStatus.message); } }); <!--NeedCopy-->
Weitere Informationen zu den sendMesage API-Befehlen finden Sie unter den folgenden Links:
https://developer.chrome.com/extensions/runtime#event-onMessageExternal
https://developer.chrome.com/extensions/runtime#method-sendMessage
Manifest V3-Unterstützung für SDK-Szenarien
Ab der Version 2305 unterstützt die Citrix Workspace-App für ChromeOS das HDX SDK mit Chrome-Erweiterungen, die Manifest Version 3 haben.
Weitere Informationen finden Sie unter Citrix Workspace-App für ChromeOS HDX SDK in der Dokumentation zu den Entwicklerhandbüchern.
Unterstützung für Unified Communications (UC) SDK
Das Citrix Unified Communications SDK ermöglicht Anbietern von Unified Communications, Cloud-Contact-Center-Anbietern, Communications Platform as a Service (CPaaS)-Anbietern oder beliebigen WebRTC-basierten Kommunikationsanbietern die nahtlose Integration in Electron-basierte Desktop- oder Browser-basierte Anwendungen.
Weitere Informationen finden Sie unter Unified Communications (UC) SDK, einem Tech Zone-Artikel.
Umleitung von WebHID-APIs
Das Unified Communications SDK für die Citrix Workspace-App für ChromeOS implementiert die Umleitung von WebHID-APIs, wie in Citrix-WebRTC definiert, mit bestimmten bekannten Einschränkungen:
- Wenn mehrere HID-Geräte desselben Typs vorhanden sind, kann der Benutzer kein bestimmtes Gerät zum Testen auswählen.
Hinweis:
Diese Funktion ist standardmäßig deaktiviert.
Konfiguration
Sie können die Funktion aktivieren, indem Sie Folgendes verwenden:
- Google Admin-Richtlinie
- Global App Configuration-Dienst
Google Admin-Richtlinie
Für verwaltete Geräte und Benutzer können Administratoren die Funktion mithilfe der Google Admin-Richtlinie wie folgt aktivieren:
- Melden Sie sich bei der Google Admin-Richtlinie an.
- Gehen Sie zu Geräteverwaltung > Chrome-Verwaltung > Nutzereinstellungen.
-
Fügen Sie die folgenden JSON-Zeichenfolgen zur Datei
policy.txtunter dem Schlüsselengine_settingshinzu.Hinweis:
Sie können diese Konfiguration auch auf Folgendes anwenden:
- Gerät > Chrome > Apps und Erweiterungen > Nutzer und Browser > Nach der Erweiterung suchen > Richtlinie für Erweiterungen.
- Gerät > Chrome > Apps und Erweiterungen > Kioske > Nach der Erweiterung suchen > Richtlinie für Erweiterungen.
- Gerät > Chrome > Apps und Erweiterungen > Verwaltete Gastsitzungen > Nach der Erweiterung suchen > Richtlinie für Erweiterungen.
-
Stellen Sie sicher, dass Sie das Attribut
webHIDauftruesetzen. Es folgt ein Beispiel für JSON-Daten:'features' : { 'msTeamsOptimization' : { 'webHID' : true } } <!--NeedCopy--> -
Legen Sie das Attribut hidDeviceBlockList im richtigen Format fest. Wenn Sie bestimmte HID-Geräte blockieren möchten, ist das Folgende ein Beispiel für JSON-Daten:
'features' : { 'msTeamsOptimization' : { // The format of the blocklist is ["VID:PID", "VID:PID", "VID:PID", ...] // Each VID and PID is an up to 4-digit hexadecimal number with an optional "0x" prefix. // The VID is a required field. The PID is optional, so the colon and PID can be omitted. // example ["35ab:21ff", "45ac", "0x567:123a", "0x1234:0x5678"] 'hidDeviceBlockList' : [] } } <!--NeedCopy--> - Speichern Sie die Änderungen.
Globaler App-Konfigurationsdienst
Administratoren können die Funktion aktivieren, indem sie zu Workspace-Konfiguration > App-Konfiguration > HDX und Multimedia > MS Teams > webHID-Umleitung aktivieren und HID-Geräte-Blockierungsliste navigieren. Aktivieren Sie das Kontrollkästchen und den entsprechenden Umschalter, um die Funktion zu aktivieren.