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 :
- Citrix Virtual Apps and Desktops
- d’une session Citrix DaaS (anciennement Citrix Virtual Apps and Desktops Service)
En utilisant cette API, vous pouvez lancer l’application Citrix Workspace pour ChromeOS à la fois en mode intégré et en mode Kiosque. Les sessions lancées en mode intégré fonctionnent de la même façon que les sessions lancées en mode kiosque.
Pour accéder à la documentation relative au SDK, consultez HDX SDK for Citrix Workspace app for ChromeOS.
Pour obtenir des exemples de SDK HDX, consultez la page de téléchargement de Citrix.
Améliorations apportées aux API du SDK Chrome HDX
Auparavant, les applications externes intégrant le SDK HDX pour ChromeOS manquaient de visibilité sur les sessions démarrées par des méthodes autres que le SDK.
À compter de la version 2408, les nouvelles améliorations apportées au SDK Chrome HDX 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 dans l’application Citrix Workspace (uniquement les magasins locaux).
Pour plus d’informations sur l’utilisation des API, consultez la section Énumérer les sessions.
SDK du canal virtuel Citrix
Le SDK du canal virtuel Citrix prend en charge l’écriture de pilotes du côté serveur et du côté client afin de fournir des canaux virtuels supplémentaires à l’aide du protocole ICA.
Les applications de canal virtuel côté serveur se trouvent sur des serveurs Citrix Virtual Apps ou Citrix Virtual Apps and Desktops. Cette version du SDK prend en charge l’écriture de nouveaux canaux virtuels pour l’application Citrix Workspace pour ChromeOS. Si vous souhaitez écrire des pilotes virtuels pour d’autres plates-formes clientes, contactez Citrix.
Le SDK du canal virtuel offre ce qui suit :
-
Une interface conviviale qui peut être utilisée avec les canaux virtuels du SDK de l’API Citrix Server (WFAPI SDK) pour créer de nouveaux canaux virtuels.
-
Un code source opérationnel pour plusieurs exemples de programmes de canal virtuel qui illustrent les techniques de programmation.
-
Le SDK de canal virtuel requiert le SDK WFAPI pour écrire sur le côté serveur du canal virtuel.
Pour accéder à la documentation relative au SDK de canal virtuel, consultez Citrix Virtual Channel SDK for Citrix Workspace app for ChromeOS.
Améliorations apportées au SDK du canal virtuel
À compter de la version 2305, l’application Citrix Workspace pour ChromeOS prend en charge les API de gestion des fenêtres dans le SDK du canal virtuel. Les API Web permettent aux administrateurs informatiques de créer des applications interactives et de les personnaliser pour leurs utilisateurs finaux.
Procédure à suivre pour consommer l’API dans l’application Chrome tierce
- Installez la dernière version de l’application Citrix Workspace pour ChromeOS. Consultez la page des téléchargements Citrix pour de plus amples informations.
-
Ajoutez l’application Chrome tierce sur la liste verte en ajoutant le fichier de stratégie de l’application Citrix Workspace pour ChromeOS. Utilisez les paramètres de gestion de Chrome pour ajouter la stratégie.
Pour de plus amples informations, consultez Gérer les applications Chrome par unité organisationnelle sur le Centre d’aide Google.
Pour ajouter l’application Chrome tierce à la liste verte, voici un exemple de données
policy.txt
JSON :{ "settings": { "Value": { "settings_version": "1.0", "store_settings": { "externalApps": [“<3rdParty_App1_ExtnID>”,“<3rdParty_App2_ExtnID>”] } } } } <!--NeedCopy-->
Remarque :
<3rdParty_App1_ExtnID>
est utilisé à titre d’exemple pour le nom de externalApps et peut envoyer des messages à l’application Citrix Workspace pour ChromeOS. Obtenez votre ID d’application (appid) sur le site chrome://extensions. - Lancez la session d’application ou de bureau dans Citrix Workspace pour ChromeOS comme suit :
-
Obtenir 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 :
Le fichier ICA est généralement récupéré depuis StoreFront en tant que fichier INI. Utilisez la fonction d’assistance suivante pour convertir un fichier ICA du format INI au format 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 depuis 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 de plus amples informations sur les commandes API sendMessage, consultez les liens suivants :
https://developer.chrome.com/extensions/runtime#event-onMessageExternal
https://developer.chrome.com/extensions/runtime#method-sendMessage
Prise en charge du fichier manifeste V3 pour les scénarios du SDK
À compter de la version 2305, l’application Citrix Workspace pour ChromeOS prend en charge le SDK HDX avec les extensions Chrome dotées de la version 3 du fichier manifeste.
Pour plus d’informations, accédez à la page Citrix Workspace app for ChromeOS HDX SDK dans la documentation du développeur.