SDK et API
SDK HDX™
-
L’application Citrix Workspace pour ChromeOS introduit une API (API expérimentale) qui permet aux applications Chrome tierces de verrouiller, déverrouiller et se déconnecter de :
- Citrix Virtual Apps and Desktops
- Session Citrix DaaS (anciennement service Citrix Virtual Apps and Desktops)
À l’aide de cette API, vous pouvez lancer l’application Citrix Workspace pour ChromeOS en mode intégré et en mode kiosque. Les sessions lancées en mode intégré fonctionnent de manière similaire aux sessions lancées en mode kiosque.
Pour la documentation du SDK, consultez SDK HDX pour l’application Citrix Workspace pour ChromeOS.
Pour des exemples du SDK HDX, consultez la page de téléchargement de Citrix.
Améliorations des API du SDK HDX pour Chrome
- Auparavant, les applications externes intégrant le SDK HDX pour ChromeOS n’avaient pas de visibilité sur les sessions démarrées par des méthodes autres que le SDK.
À partir de la version 2408, les nouvelles améliorations apportées au SDK HDX pour Chrome permettent d’identifier toutes les sessions actives, de déconnecter des sessions spécifiques, de déconnecter toutes les sessions actives et de déconnecter l’utilisateur de tous les magasins de l’application Citrix Workspace™ (uniquement les magasins sur site).
Pour plus d’informations sur l’utilisation des API, consultez Énumérer les sessions.
SDK de canal virtuel Citrix
Le kit de développement logiciel (SDK) de canal virtuel Citrix vous permet d’écrire des applications côté serveur et des pilotes côté client pour des canaux virtuels supplémentaires utilisant le protocole ICA®.
Les applications de canal virtuel côté serveur se trouvent sur les serveurs Citrix Virtual Apps ou Citrix Virtual Apps and Desktops. Cette version du SDK vous permet d’écrire de nouveaux canaux virtuels pour l’application Citrix Workspace pour ChromeOS. Si vous souhaitez écrire des pilotes virtuels pour d’autres plateformes clientes, contactez Citrix.
Le SDK de canal virtuel fournit :
-
Une interface simple qui peut être utilisée avec les canaux virtuels du SDK API de serveur Citrix (SDK WFAPI) pour créer de nouveaux canaux virtuels.
-
Un code source fonctionnel pour plusieurs exemples de programmes de canaux virtuels qui démontrent des techniques de programmation.
-
Le SDK de canal virtuel nécessite le SDK WFAPI pour écrire la partie serveur du canal virtuel.
Pour la documentation du SDK VC, consultez SDK de canal virtuel Citrix pour l’application Citrix Workspace pour ChromeOS.
Améliorations du SDK de canal virtuel
À partir de la version 2305, l’application Citrix Workspace pour ChromeOS prend en charge les API de gestion de fenêtre dans le SDK de canal virtuel. Les API Web permettent aux administrateurs informatiques de créer des applications interactives et de les personnaliser pour leurs utilisateurs finaux.
- Installez la dernière version de l’application Citrix Workspace pour ChromeOS. Consultez la page de téléchargement de Citrix pour plus de détails.
- Ajoutez l’application Chrome tierce à la liste d’autorisation en ajoutant le fichier de stratégie pour l’application Citrix Workspace pour ChromeOS. Utilisez les paramètres de gestion de Chrome pour ajouter la stratégie.
-
Pour plus de détails, consultez Gérer les applications Chrome par unité organisationnelle sur l’assistance Google.
Pour ajouter l’application Chrome tierce à la liste d’autorisation, voici un exemple de données JSON
policy.txt:{ "settings": { "Value": { "settings_version": "1.0", "store_settings": { "externalApps": [“<3rdParty_App1_ExtnID>”,“<3rdParty_App2_ExtnID>”] } } } } <!--NeedCopy-->Remarque :
<3rdParty_App1_ExtnID>est utilisé comme exemple pour le nom des externalApps et peut envoyer des messages à l’application Citrix Workspace pour ChromeOS. Obtenez votre appid sur le site chrome://extensions.
- Lancez l’application ou une session de bureau dans Citrix Workspace pour ChromeOS comme suit :
-
Obtenez le workspaceappID
var workspaceappID = " haiffjcadagjlijoggckpgfnoeiflnem ";Remarque :
Dans cet exemple, workspaceappID indique la version du magasin de l’application Citrix Workspace pour ChromeOS. Si vous utilisez une version reconditionnée de l’application Citrix Workspace pour ChromeOS, utilisez le workspaceappID approprié.
-
Convertissez les données ICA du format INI au format JSON.
Remarque :
-
Généralement, le fichier ICA est récupéré de StoreFront sous forme de fichier INI. Utilisez la fonction d’assistance suivante pour convertir un fichier ICA INI en JSON.
//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--> -
Envoyez un message ICA de l’application Chrome tierce à l’application Citrix Workspace pour 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-->
Pour plus de détails sur les commandes de l’API sendMesage, consultez les liens suivants :
https://developer.chrome.com/extensions/runtime#event-onMessageExternal
https://developer.chrome.com/extensions/runtime#method-sendMessage
Prise en charge de Manifest V3 pour les scénarios SDK
À partir de la version 2305, l’application Citrix Workspace pour ChromeOS prend en charge le SDK HDX avec les extensions Chrome ayant la version 3 du manifeste.
Pour plus d’informations, consultez SDK HDX de l’application Citrix Workspace pour ChromeOS dans la documentation des guides de développement.
Prise en charge du SDK de communications unifiées (UC)
Le SDK de communications unifiées Citrix permet aux fournisseurs de communications unifiées, aux fournisseurs de centres de contact cloud, aux fournisseurs de plateformes de communication en tant que service (CPaaS) ou à tout fournisseur de communications basé sur WebRTC de s’intégrer de manière transparente aux applications de bureau basées sur Electron ou aux applications basées sur navigateur.
Pour plus d’informations, consultez SDK de communications unifiées (UC), qui est un article de la zone technique.
Redirection des API WebHID
Le SDK de communications unifiées pour l’application Citrix Workspace pour ChromeOS implémente la redirection des API WebHID telles que définies dans Citrix-WebRTC, avec certaines limitations connues :
- Si plusieurs périphériques HID du même type existent, l’utilisateur ne peut pas sélectionner un périphérique spécifique pour les tests.
Remarque :
Cette fonctionnalité est désactivée par défaut.
Comment configurer
Vous pouvez activer la fonctionnalité en utilisant :
- Stratégie d’administration Google
- Service de configuration globale des applications
Stratégie d’administration Google
Pour les appareils et les utilisateurs gérés, les administrateurs peuvent activer la fonctionnalité à l’aide de la stratégie d’administration Google comme suit :
- Connectez-vous à la stratégie d’administration Google.
- Accédez à Gestion des appareils > Gestion de Chrome > Paramètres utilisateur.
-
Ajoutez les chaînes JSON suivantes au fichier
policy.txtsous la cléengine_settings.Remarque :
Vous pouvez également appliquer cette configuration aux éléments suivants :
- Appareil > Chrome > Applications et extensions > Utilisateurs et navigateurs > Rechercher l’extension > Stratégie pour les extensions.
- Appareil > Chrome > Applications et extensions > Kiosques > Rechercher l’extension > Stratégie pour les extensions.
- Appareil > Chrome > Applications et extensions > Sessions d’invités gérées > Rechercher l’extension > Stratégie pour les extensions.
-
Assurez-vous de définir l’attribut
webHIDsurtrue. Voici un exemple de données JSON :'features' : { 'msTeamsOptimization' : { 'webHID' : true } } <!--NeedCopy--> -
Définissez l’attribut hidDeviceBlockList avec le format correct. Si vous souhaitez bloquer certains périphériques HID, voici un exemple de données JSON :
'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--> - Enregistrez les modifications.
Service de configuration globale des applications
Les administrateurs peuvent activer la fonctionnalité en accédant à Configuration de l’espace de travail > Configuration des applications > HDX et Multimédia > MS Teams > Activer la redirection webHID et Liste de blocage des périphériques HID. Cochez la case et le bouton bascule correspondant pour activer la fonctionnalité.