Utilisation des services Web d’Adobe® Connect™ Enterprise
Si le présent guide est fourni avec un logiciel régi par un contrat d’utilisateur final, ce guide, ainsi que le logiciel décrit, sont
fournis sous licence et peuvent être utilisés ou copiés uniquement selon les clauses et conditions de la licence. A moins d’une
autorisation expresse accordée par cette licence, aucune partie de ce guide ne peut être reproduite, stockée dans un système
d’interrogation ou transmise, sous quelque forme ou par quelque moyen que ce soit (électronique, mécanique, par enregistrement
ou autre) sans l’autorisation écrite préalable d’Adobe Systems Incorporated. Veuillez noter que le contenu du présent guide est
protégé par la loi sur les droits d’auteur, même s’il n’est pas distribué avec un logiciel régi par un contrat de licence utilisateur.
Les informations contenues dans ce guide sont fournies à titre purement informatif ; elles sont susceptibles d’être modifiées sans
préavis et ne doivent pas être interprétées comme étant un engagement de la part d’Adobe Systems Incorporated. Adobe Systems
Incorporated n’accepte aucune responsabilité quant aux erreurs ou inexactitudes pouvant être contenues dans le présent guide.
Veuillez noter que les illustrations et images existantes que vous souhaiterez éventuellement inclure dans votre projet sont
susceptibles d’être protégées par les lois sur les droits d’auteur. L’inclusion non autorisée de tels éléments dans vos nouveaux
travaux peut constituer une violation des droits du propriétaire. Veuillez vous assurer que vous obtenez toute autorisation
nécessaire auprès du détenteur du copyright.
Toute référence à des noms de sociétés dans les modèles types n’est utilisée qu’à titre d’exemple et ne fait référence à aucune
société réelle.
Adobe, le logo Adobe, Acrobat, Adobe Captivate, Adobe Connect, Adobe Press, Breeze, Flash, Flash Player, PDF et Shockwave
sont des marques commerciales ou des marques déposées d’Adobe Systems Incorporated aux Etats-Unis et/ou dans d’autres pays.
Java une marque commerciale ou une marque déposée de Sun Microsystems, Inc. aux Etats-Unis et dans d’autres pays. Toutes les
autres marques citées appartiennent à leurs propriétaires respectifs.
Adobe Systems Incorporated, 345 Park Avenue, San Jose, Californie 95110, Etats-Unis. A l’attention des utilisateurs du
Gouvernement des Etats-Unis. Ce logiciel et sa documentation sont des « articles commerciaux », conformément à la définition
de ce terme dans le document 48 C.F.R. §2.101, comprenant d’une part un « logiciel informatique commercial » et d’autre part
une « documentation de logiciel informatique commercial », conformément à la définition de ces termes dans le document 48
C.F.R. §12.212 ou 48 C.F.R. §227.7202, si approprié. Conformément aux documents 48 C.F.R. §12.212 ou 48 C.F.R.
§§227.7202-1 à 227.7202-4, si approprié, le logiciel informatique commercial et la documentation de logiciel informatique
commercial sont accordés sous licence aux utilisateurs du Gouvernement des Etats-Unis (a) uniquement en tant que produits
commerciaux et (b) uniquement avec les droits accordés à tous les autres utilisateurs selon les termes et conditions mentionnés
dans le présent contrat. Droits non publiés réservés dans le cadre des lois sur les droits d’auteur en vigueur aux Etats-Unis. Adobe
Systems Incorporated, 345 Park Avenue, San Jose, CA 95110-2704, USA. A l’attention des utilisateurs du Gouvernement des
Etats-Unis, Adobe s’engage à respecter la législation relative à l’égalité des chances y compris, le cas échéant, les dispositions du
décret 11246, tel qu’amendé, à la section 402 de la loi sur l’assistance aux vétérans du Vietnam (Vietnam Era Veterans
Readjustment Assistance Act) de 1974 (38 USC 4212), et à la section 503 de la loi sur la réadaptation (Rehabilitation Act) de
1973, telle qu’amendée, et la réglementation des articles 41 CFR, alinéas 60-1 à 60-60, 60-250 et 60-741. La clause relative à
l’égalité des chances et les règlements énoncés dans la phrase précédente doivent être compris comme tels lorsqu’il y est fait
référence.
Les services Web d’Adobe® Connect™ Enterprise permettent à vos applications d’interagir avec
Adobe Connect Enterprise Server 6 ou avec Adobe Connect Enterprise Hosted 6.
Ce manuel décrit l’envoi des appels d’API XML à Connect Enterprise par les applications et
leur interprétation de la réponse XML. Il s’adresse aux développeurs désireux de concevoir des
applications personnalisées pour Connect Enterprise ou qui souhaitent intégrer ce dernier à
un autre système, par exemple à un système de gestion de la formation (LMS) ou à un service
d’annuaire LDAP.
Avant d’utiliser ce manuel, vous devez connaître les bases du langage XML et de l’utilisation
du protocole HTTP pour communiquer avec un serveur depuis une application cliente. Ce
manuel propose quelques exemples de code Java™, mais ne part pas du principe que vous
utilisez un langage ou un environnement spécifique.
Conseils et formation
Adobe propose un large éventail de ressources qui vous aideront à vous familiariser avec nos
produits et à les exploiter.
■ Centre des développeurs Adobe : Didacticiels, documents de référence, guides de script et
autres informations exhaustives.
■ Autres ressources : Formation, livres, forums d’utilisateurs, certificats de produits, etc.
■ Extras et téléchargements : Contenus et logiciels téléchargeables.
Centre des développeurs Adobe
Cette section communautaire du site Adobe.com fournit des informations aux utilisateurs
avancés, y compris aux développeurs de logiciels et de modules d’extension. Vous y trouverez
des didacticiels, des kits de développements logiciels (SDK), des guides de script et un
exemple de code, ainsi que des forums, des flux RSS, des séminaires en ligne et d’autres
ressources techniques.
7
Page 8
Autres ressources
Sources d’informations et d’aide supplémentaires disponibles pour les produits Adobe.
■ Visitez la page d’accueil de l’assistance du site Web d’Adobe pour plus d’informations sur
les options de support technique gratuites et payantes. Les principaux problèmes sont
énumérés par produit dans les sites Web américain et japonais d’Adobe. Suivez le lien
Formation pour accéder aux livres Adobe Press, aux ressources de formation vidéo et en
ligne dirigées par un instructeur, aux programmes de certification logicielle d’Adobe, etc.
■ Visitez la section Communautés du site Web d’Adobe pour découvrir des forums, des
blogs et autres portails au travers desquels les utilisateurs partagent outils et informations,
posez des questions et découvrez comment les autres utilisateurs tirent le meilleur parti de
leurs logiciels. Les forums d’utilisateurs sont disponibles en anglais, français, espagnol,
allemand et japonais dans la page principale Support de votre site Web Adobe national.
Les blogs sont publiés dans un grand nombre de langues.
Extras et téléchargements
Pour les extensions et les contenus gratuits, visitez la communauté en ligne appelée Adobe
Studio® Exchange, où les utilisateurs téléchargent et échangent gratuitement des milliers
d’actions, des modules d’extension et d’autres contenus à exploiter avec les produits Adobe.
Pour visiter Adobe Studio Exchange, accédez au Pôle de création Adobe depuis la page
d’accueil du site Web d’Adobe.
Les téléchargements disponibles depuis le site Web d’Adobe comprennent des mises à jour
gratuites, des évaluations et d’autres logiciels très utiles. La section Plug-ins du magasin
d’Adobe permet d’accéder à des milliers de modules issus de développeurs tiers, qui vous
aideront à automatiser vos tâches, à personnaliser vos flux de travail, à créer des effets
professionnels spéciaux, etc.
Environnement de développement
Les services Web de Connect Enterprise vous permettent d’utiliser n’importe quel langage ou
plate-forme capable d’envoyer et de recevoir des requêtes XML via HTTP pour développer
des applications personnalisées. Par exemple, vous pouvez utiliser Java et la plate-forme J2EE,
C#.NET, PHP, un serveur de portail ou toute plate-forme de développement Web. La plupart
des applications personnalisées sont des portails ou des applications Web.
De façon générale, les types d’outils suivants se révèleront très utiles :
■ Une bibliothèque de code d’analyseur XML, si votre langage de programmation prend en
charge l’analyse XML.
8Avant de commencer
Page 9
■ Une bibliothèque de code de gestion des cookies, qui vous aidera à gérer les cookies de
session renvoyés par Connect Enterprise.
■ Un outil permettant d’afficher les en-têtes des réponses et des requêtes HTTP dans un
navigateur. La plupart de ces outils sont disponibles sur Internet.
Nouveautés de ce manuel
La section du manuel du développeur présente un nouveau format de procédure qui décrit
les séquences d’appels nécessaires pour l’exécution de certaines tâches à l’aide de l’API XML.
Vous pouvez coder ces procédures dans votre application.
La référence d’API présente un nouveau format qui documente les paramètres et les URL de
requête, ainsi que les éléments et les attributs des réponses, avec des exemples de réponses et de
requêtes.
Un exemple d’application a été ajouté pour cette version. Cet exemple est une application
Java et JSP qui s’exécute sur tout serveur d’application ou Web compatible J2EE. Il décrit la
création, l’affichage et le chargement des réunions Adobe Acrobat® Connect Professional.
Appelé « firstapp », cet exemple d’application est disponible dans le fichier firstapp.zip du
dossier documentation/samples du CD du produit. Vous trouverez les instructions relatives à
l’installation et l’exécution de l’exemple d’application dans son fichier Lisez-moi.
Ressources supplémentaires
Vous trouverez sur Internet de nombreuses ressources très utiles fournissant des informations
sur Connect Enterprise et sur les services Web et XML.
Ressources de Connect Enterprise
Centre de ressources de Connect Enterprise Le centre de ressources, accessible depuis le
site Web d’Adobe, est régulièrement mis à jour et propose des didacticiels, des simulations, des
informations sur les pratiques conseillées et des liens menant à des procédures.
Centre des développeurs Connect Enterprise Le Centre des développeurs se révèlera très
utile pour les développeurs. Il est mis à jour régulièrement avec des didacticiels et des articles
sur la conception d’applications pour Connect Enterprise.
Centre de documentation Connect Enterprise Le Centre de documentation permet de
télécharger ou de consulter toute la documentation relatives aux produits Connect Enterprise.
Ressources supplémentaires9
Page 10
Connect Enterprise Support Center Lorsque vous avez besoin d’une assistance technique,
le Support Center propose des informations à jour, y compris des notes techniques, des
présentations Connect Enterprise et des détails sur le programme de prise en charge. Vous
pouvez également consulter les Forums d’assistance pour des discussions entre utilisateurs sur
des problèmes techniques.
Centre de support sous licence Connect Enterprise Le Centre de support sous licence
propose de la documentation et d’autres ressources aux clients disposant d’une licence Adobe
Connect Enterprise Server 6.
Ressources XML et services Web
Le site Web Services Primer sur xml.com est une bonne introduction aux services Web.
Le didacticiel XML sur le site Web W3Schools (w3schools.com) peut vous aider à
commencer à utiliser XML.
Le didacticiel XPath, également sur le site Web W3Schools (w3schools.com), décrit XPath,
qui analyse un document XML pour que vous puissiez l’utiliser dans application.
Le didacticiel XSLT, un didacticiel tiers disponible sur le site Web W3Schools
(w3schools.com), vous enseigne les transformations XSL, qui permettent de convertir des
données XML en d’autres formats.
La spécification XSL Transformations (XSLT) disponible sur le site Web du W3C
(w3.org), de la commission de standards à l’origine de sa création, définit officiellement XSLT.
Représentation numérique de la date et de l’heure, disponible sur le site Web de
l’Organisation internationale de normalisation (iso.org), fournit des informations sur le
format de dates et d’heures standard selon la norme ISO 8601.
Formats de dates et d’heures disponibles sur le site Web du W3C (w3.org) est la définition
officielle du format de date et d’heure ISO 8601.
Autres ressources
Le Centre des développeurs Flash Player et le Centre des développeurs Flash Media Server,
tous deux accessibles depuis le Centre des développeurs Adobe, proposent des articles, des
exemples et des indications pertinentes pour développer des applications utilisant Adobe Flash
Player et Adobe Flash Media Server.
10Avant de commencer
Page 11
Le didacticiel Concepts SCORM, disponible sur le site Web d’Eduworks Corporation
(eduworks.com), présente le modèle de référence des objets de contenus partageables
(SCORM, Shareable Content Object Reference Model) et décrive les Objets de contenus
partageables (SCO, Shareable Content Object) et les systèmes de gestion de la formation
(LMS, Learning Management System).
Une Introduction à la documentation LDAP, disponible sur le site Web de Kings Mountain
Systems (www.kingsmountain.com), fournit une présentation très utile du protocole LDAP
(Lightweight Directory Access Protocol). Ce site peut même fournir des matériaux de base ou
des liens pour les développeurs qui intègrent un annuaire LDAP à Connect Enterprise.
Microsoft SQL Server Connect Enterprise utilise une base de données Microsoft SQL
Server, dans laquelle vos applications personnalisées récupèrent et écrivent des données. Vous
trouverez des ressources très utiles dans le Centre des développeurs Microsoft SQL Server
(msdn.microsoft.com), y compris des références, une communauté d’utilisateurs, un support
technique et d’autres informations.
Conventions
Ce manuel utilise des conventions standard pour afficher le code que vous connaissez déjà.
Toutefois, la référence d’API est une définition formelle du contrat d’API passé entre
l’application appelante et le serveur. Il est donc nécessaire de décrire les définitions de syntaxe
des URL de requête.
Pour une meilleure lisibilité, nous avons placé les différentes sections d’une URL de requête
sur des lignes distinctes :
Lorsque vous entrez une URL de requête dans la barre d’adresse d’un navigateur ou que vous
la construisez dans une application, composez-la sur une seule ligne :
Les éléments de syntaxe en police de code bleue représentent les définitions que vous
construisez, avec un lien hypertexte vers la syntaxe de la définition.
Conventions11
Page 12
12Avant de commencer
Page 13
CHAPITRE 1
Architecture
Bienvenue dans les Services Web d’Adobe® Connect™ Enterprise, la couche de services Web
sur Adobe Connect Enterprise Server 6 et Adobe Connect Enterprise Hosted 6 et la suite
d’applications Connect Enterprise.
Les Services Web vous permettent de concevoir des portails ou des applications Web intégrant
les fonctionnalités Connect Enterprise et de collecter les informations de systèmes tiers, tels
que des portails et des systèmes de gestion des relations clients (CRM) et de planification des
ressources de l’entreprise (ERP).
Training
Presenter
Enterprise Server ou Enterprise Hosted
Les services Web de Connect Enterprise fournissent des fonctionnalités de réunion, de formation et
d’événement à vos applications via leur API XML.
Events
Meeting
APIs & SDKs
1
Vous pouvez par exemple disposer d’un système centralisé de gestion des utilisateurs, tel qu’un
annuaire LDAP, Microsoft Active Directory ou un autre système tiers, qui fait intégralement
partie de vos processus métier.
13
Page 14
Les Services Web vous permettent d’écrire une application qui synchronise les utilisateurs
entre votre système et Connect Enterprise. L’application peut utiliser la plate-forme J2EE ou
toute autre technologie de votre choix pour récupérer la liste des utilisateurs dans l’annuaire, la
comparer à celle des utilisateurs de Connect Enterprise, puis effectuer les mises à jour
nécessaires au sein du référentiel d’utilisateurs de Connect Enterprise, par exemple en ajoutant
ou en supprimant des utilisateurs ou des groupes. Ceci n’est qu’un exemple d’application
personnalisée, vous en trouverez d’autres dans le Centre des développeurs Connect Enterprise.
Circulation des données
Le diagramme suivant présente le flux des données qui circulent entre des applications clientes
et Connect Enterprise. Les applications personnalisées que vous concevez utilisent les chemins
1 à 2 et A à B. Les applications Connect Enterprise (telles qu’Adobe® Acrobat® Connect™
Professional, Connect Training ou Connect Events) peuvent utiliser n’importe quel chemin.
Application cliente
Navigateur Web
Flash Player
1
HTTP:80
HTTPS:443
A
RTMPS:443
C
RTMP:1935
3
RTMPT:80
3a4a
Autorité de certification
2
B
D
4
Enterprise Connect
API
des
services
Web
Flash Media Server
Base de données SQL
Circulation des données entre des applications clientes et Connect Enterprise
Les données peuvent être cryptées avec SSL ou en clair.
14Chapitre 1: Architecture
Serveur Web/
Application
Page 15
En clair Lorsque le flux des données n’est pas crypté, les connexions sont établies via les
protocoles HTTP et RTMP d’Adobe (Real Time Messaging Protocol) et suivent les chemins
décrits dans le tableau suivant.
1Le navigateur Web client demande une réunion Acrobat Connect Professional
ou une URL de contenu via le port HTTP:80 (les chemins de connexions
peuvent varier).
2Le serveur Web répond par un transfert de contenu ou fournit au navigateur
client les informations nécessaires pour accéder à Acrobat Connect
Professional.
3Adobe Flash
Server d’Adobe via RTMP:1935 et HTTP:80.
4Le serveur Flash Media répond et une connexion permanente est ouverte pour
diffuser le trafic de la réunion vers le navigateur.
3a
(alternative)
4a
(alternative)
Cryptée Si le flux de données est crypté, les connexions sont sécurisées via les protocoles
Dans certains cas, Flash Player requiert une connexion au serveur Flash
Media, mais ne peut obtenir qu’une connexion par tunnel via RTMPT:80.
Le serveur Flash Media répond et une connexion par tunnel est ouverte pour
diffuser le trafic de la réunion vers le navigateur.
® Player requiert une connexion à Macromedia® Flash Media
HTTPS and RTMPS (Real Time Messaging Protocol over SSL), comme suit.
ALe navigateur Web client requiert une réunion ou une URL de contenu
sécurisée via une connexion cryptée sur HTTPS:443 (les chemins de
connexions peuvent varier).
BLe serveur Web/d’application répond par un transfert de contenu crypté ou
fournit au client les informations nécessaires pour établir une connexion
cryptée à Acrobat Connect Professional.
CFlash Player requiert une connexion cryptée au serveur Flash Media via
RTMPS:443.
DLe serveur Flash Media répond et une connexion permanente est ouverte pour
diffuser le trafic de la réunion vers le navigateur.
Circulation des données15
Page 16
Applications personnalisées
Les services Web Connect Enterprise fournissant une API XML, votre application doit
pouvoir communiquer avec Enterprise Server ou Enterprise Hosted à l’aide de XML sur
HTTP ou HTTPS. Votre application appelle l’API en créant une URL de requête et en lui
transmettant un ou plusieurs paramètres, soit sous forme de paires nom/valeur, soit sous
forme de document XML. Les services Web renvoient une réponse XML, dont vous pouvez
extraire les valeurs.
Les applications personnalisées récupèrent des métadonnées dans la base de données Connect
Enterprise. Les métadonnées comprennent les noms et les horaires des réunions et des cours,
les URL des salles de réunions et du contenu et les informations de rapport.
Dans le cas d’une application personnalisée récupérant les métadonnées dans la base de
données, les données circulent du navigateur Web client au serveur de l’application Web
cliente, à l’API XML, au serveur d’application Web Connect Enterprise, puis à la base de
données SQL, avant de revenir.
La circulation des données entre une application personnalisée et Connect Enterprise
fonctionne comme suit :
1. Un utilisateur accède à votre application personnalisée depuis un navigateur Web.
2. L’application appelle l’API XML via HTTP:80 ou HTTPS:443.
3. Le serveur d’application Web Connect Enterprise autorise l’application et ses utilisateurs,
récupère les métadonnées dans la base de données SQL et les renvoie.
4. Côté client, votre serveur d’application ou Web, un analyseur XML et des bibliothèques
logicielles gèrent la réponse et la renvoient à votre application.
5. L’utilisateur continue de travailler dans votre application personnalisée et clique sur l’URL
d’une réunion ou d’un contenu. A ce stade, l’utilisateur accède à une application Connect
Enterprise, telle qu’Acrobat Connect Professional, pour accéder à la salle d’une réunion, et
le flux de données typique entre une application Connect Enterprise et le serveur
commence.
16Chapitre 1: Architecture
Page 17
Applications Connect Enterprise
Les applications Connect Enterprise appellent le serveur à l’aide de la même API XML de
services Web que celle que vous utilisez depuis une application personnalisée.
En général, le contenu est transmis via le port 80 HTTP ou le port 443 HTTPS. Il comprend
des diapositives, des pages HTTP, des fichiers Macromedia® Flash d’Adobe (SWF) et des
fichiers transférés par l’intermédiaire du module FileShare. Il s’agit là des numéros de port par
défaut que vous pouvez configurer (voir le Guide d’installation et de configuration de Connect Enterprise pour plus d’informations).
Les communications en diffusion continue et en temps réel provenant du serveur Flash Media
sont transmises via le port 1935 RTMP. Les communications en diffusion continue
comprennent du contenu audio et vidéo (Webcam et FLV), le partage de fichiers et les
conversations. L’état des réunions est également conservé via le port 1935 RTMP.
Composants de Connect Enterprise
Enterprise Server et Enterprise Hosted sont conçus avec deux composants de serveur et
chacun d’eux utilise une base de données SQL.
Le serveur d’application Web Il s’agit du « cerveau » de Connect Enterprise. Il contient et
exécute toute la logique métier nécessaire pour délivrer le contenu aux utilisateurs. Il gère le
contrôle d’accès, la sécurité, les quotas et les licences, de même que les fonctions de gestion,
telles que la mise en cluster, le basculement et la réplication.
Le serveur d’application Web gère également Connect Enterprise, l’application par
l’intermédiaire de laquelle vous affichez et gérez les utilisateurs et le contenu de votre
organisation, lorsque vous n’utilisez pas une application personnalisée ou un système tiers
intégré. Les métadonnées qui décrivent le contenu et les utilisateurs peuvent être stockées dans
une ou plusieurs bases de données SQL répliquées. Le serveur d’application Web est sans état,
ce qui signifie que sa mise à l’échelle est quasi linéaire.
Flash Media Server Il s’agit des « muscles » de Connect Enterprise Server. Flash Media
Server diffuse tout le contenu audio, vidéo et multimédia à l’aide du protocole RTMP.
Lorsqu’une réunion est enregistrée puis visualisée à nouveau, le son et la vidéo sont
synchronisés ou le contenu est converti et compacté pour le partage d’écran en temps réel. Ce
travail est effectué par Flash Media Server.
Flash Media Server joue également un rôle essentiel en réduisant la charge du serveur grâce à
la mise en cache des pages Web fréquemment accédées, des diffusions continues et des
données partagées.
Circulation des données17
Page 18
La base de données SQL Connect Enterprise utilise la base de données Microsoft SQL
Server pour le stockage permanent des métadonnées applicatives et transactionnelles, dont les
utilisateurs, les groupes, le contenu et les informations de rapports. L’API XML récupère les
métadonnées stockées dans la base de données. La base de données peut être implémentée
avec le moteur de base de données intégré MSDE (Microsoft SQL Server Desktop Engine) ou
avec la version complète de Microsoft SQL Server 2000.
Conception de votre premier appel d’API
Les services Web de Connect Enterprise utilisent une infrastructure servlet pour gérer les
requêtes d’API XML. Dans le diagramme de circulation des données, l’infrastructure servlet
est représentée par le composant API. Le servlet API reçoit les requêtes XML des clients et
renvoie les réponses XML du serveur d’application Web et de la base de données.
Les requêtes à l’API XML sont mises en forme en tant qu’URL de requête HTTP gérées par le
servlet API. Une URL de requête présente un nom d’action et des paramètres dans des paires
nom/valeur, comme suit :
Si vous avez accès à un compte Enterprise Server ou Enterprise Hosted qui vous permet de
tester les appels d’API, procédez à quelques expériences. En réalité, Adobe recommande de
tester les appels d’API dans le navigateur pendant que vous vous familiarisez avec l’API et
écrivez des applications.
Avant de commencer, il est utile d’installer un outil qui vous permette d’afficher les en-têtes
des réponses et des requêtes HTTP dans votre navigateur.
Appel de common-info dans le navigateur
1. (Facultatif) Activez un outil qui vous permette d’afficher les en-têtes HTTP dans votre
navigateur.
2. Ouvrez un navigateur et naviguez jusqu’à votre page de connexion à Connect Enterprise.
3. Sans vous connecter, supprimez la partie de l’URL située après le nom de domaine et
ajoutez un appel à
https://example.com/api/xml?action=common-info
common-info :
La réponse de common-info vous donne des renseignements sur votre session avec le
serveur, en particulier le cookie identifiant votre session :
Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1;
.NET CLR 1.1.4322)
</user-agent>
</common>
</results>
Lorsque vous connectez un utilisateur depuis une application, vous devez renvoyer la
valeur du cookie au serveur pour identifier la session de l’utilisateur (voir Connexion
depuis une application).
Appelez principal-list dans un navigateur
Dès que vous connaissez la valeur du cookie BREEZESESSION par common-info, le navigateur
l’ajoute dans l’en-tête de votre prochaine requête.
1. Dans un navigateur Web, connectez-vous à Connect Enterprise. Modifiez l’URL du
navigateur pour appeler
https://example.com/api/xml?action=principal-list
2.
Vérifiez l’en-tête de la requête. Cette fois, il renvoie la valeur du cookie BREEZESESSION au
principal-list :
serveur :
GET /api/xml?action=principal-list HTTP/1.1
Accept: */*
Accept-Language: en-us
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET
La plupart des actions effectuées dans l’API vous permettent d’ajouter un filtre afin de ne
renvoyer que certains éléments de réponse ou d’ajouter un tri permettant d’afficher les
résultats dans un ordre spécifique.
Un filtre est un paramètre spécial qui commence par le mot-clé
modificateur facultatif, puis d’un nom de champ et d’une valeur. Voici des exemples de
filtres :
■ filter-name=jazz doe (qui renvoie les résultats comprenant le nom exact jazz doe)
■ filter-like-name=jazz (qui renvoie tous les résultats dont le nom contient le mot jazz)
■ filter-out-type=user (qui renvoie tous les résultats ne présentant pas de type user)
Ce ne sont là que quelques types de filtres, vous en trouverez d’autres à la section
definition
. Vérifiez une action dans la référence (Chapitre 6, Référence des actions) pour
savoir si la réponse peut être filtrée. En général, lorsqu’une action autorise les filtres, vous
pouvez les utiliser sur n’importe quel élément de réponse ou attribut.
Le tri est un autre paramètre spécial commençant par le mot-clé
suivi d’un nom de champ, puis de l’un des mots-clés
■ sort-name=asc (pour trier en ordre croissant par name)
■ sort-group-id=desc (pour trier en ordre décroissant par group-id)
asc ou desc ; par exemple :
Ce ne sont là que quelques exemples de tri. Vous pouvez tester les tris dans le navigateur ou
consultez la section
sort-definition pour en savoir plus.
filter, suivi d’un
filter-
sort (ou sort1 ou sort2),
20Chapitre 1: Architecture
Page 21
Envoi d’un appel avec filtre et tri
1. Appelez de nouveau principal-list, en n’affichant que les groupes et en triant les noms
A ce stade, vous pouvez continuer à tester les appels dans le navigateur et observer leur
fonctionnement. C’est certainement le meilleur moyen, et le plus facile, de comprendre l’API
XML. Si vous avez besoin d’informations complémentaires, orientez-vous vers les ressources
suivantes :
■ La référence API au Chapitre 6, Référence des actions
■ Chapitre 2, Connexion et requêtes, pour plus d’informations sur la connexion des
utilisateurs depuis les applications
■ Chapitre 3, Notions de base, pour découvrir les trois concepts de base sous-jacents à l’API
■ Chapitre 4, Réunions, si vous souhaitez créer et gérer des réunions depuis une application
■ Chapitre 5, Formations, si vous concevez une application de formation
Conception de votre premier appel d’API21
Page 22
22Chapitre 1: Architecture
Page 23
CHAPITRE 2
Connexion et requêtes
Ce chapitre explique comment connecter un utilisateur depuis votre application, envoyer des
requêtes, gérer les réponses et déconnecter l’utilisateur.
Plusieurs méthodes permettent d’accomplir la plupart de ces tâches, selon votre
environnement de développement, la configuration du serveur et la conception de
l’application.
Connexion depuis une application
Toute application personnalisée, qui utilise les fonctionnalités des Services Web Adobe®
Connect™ Enterprise ou qui s’intègre à un système tiers, doit connecter l’utilisateur à Adobe
Connect Enterprise Server 6 ou à un compte Adobe Connect Enterprise Hosted 6. Dans sa
forme la plus simple, le processus de connexion appelle l’action
Toutefois, la technique de connexion varie, selon si vous utilisez la gestion des cookies, si vous
disposez d’un serveur sous licence ou d’un compte hébergé et si vous vous authentifiiez
directement auprès de Connect Enterprise ou auprès d’un autorité externe. Selon votre
environnement et la configuration du serveur, vous pouvez également combiner ces options.
Gestion des cookies Lorsqu’un utilisateur se connecte, Connect Enterprise renvoie un
cookie qui identifie sa session. Vous devez alors transmettre ce cookie au serveur lors de tous
les appels au serveur effectués pendant cette session. Ensuite, lorsque l’utilisateur se
déconnecte, le serveur fait expirer le cookie et vous devez l’invalider.
Dans votre environnement de développement, vous pouvez utiliser une bibliothèque de code
gérant les cookies à votre place. Le processus de connexion et la gestion de la session d’un
utilisateur diffèrent selon que vous utilisez une bibliothèque de gestion des cookies ou si vous
gérez vous-même la session de l’utilisateur.
login.
2
23
Page 24
Serveur sous licence ou compte hébergéVotre organisation peut posséder un serveur
Connect Enterprise sous licence protégé derrière votre pare-feu ou un compte Enterprise
Hosted hébergé chez Adobe. Dans tous les cas, vous envoyez les requêtes XML via le protocole
HTTP ou HTTPS, mais les exigences de sécurité et le processus de connexion diffèrent. En
tant que client hébergé, vous pouvez utiliser certains paramètres avec l’action
login afin
d’éviter d’envoyer les identifiants utilisateur et les mots de passe via Internet.
Authentification directe ou externe Que vous soyez un client hébergé ou sous licence,
votre application peut s’authentifier directement auprès de Connect Enterprise, ou vous
pouvez authentifier les utilisateurs sur votre propre réseau, définir un identifiant dans l’en-tête
de requête HTTP, puis l’envoyer à Connect Enterprise. Le processus de connexion varie selon
si vous utilisez une authentification directe ou externe.
Connexion à Enterprise Server
La technique habituelle de connexion des utilisateurs à Enterprise Server emploie l’action
login, qui transmet l’identifiant de connexion et le mot de passe de l’utilisateur. Cette
technique fonctionne avec les requêtes HTTP
Vous devez également gérer le cookie
BREEZESESSION renvoyé par le serveur pour chaque
session d’utilisateur. Si vous utilisez une bibliothèque de gestion des cookies côté client, il est
bien plus facile de la laisser gérer les cookies à votre place que d’effectuer cette opération
vous-même. Si vous ne disposez pas d’une telle bibliothèque, appelez
paramètre
session car cette opération est plus facile et plus fiable que la définition de
valeurs d’en-tête HTTP.
REMARQUE
Si vous envoyez les mots de passe utilisateur à Enterprise Server, utilisez SSL de sorte
que les mots de passe soient cryptés pendant la transmission, même lorsque vous avez
installé Enterprise Server sous licence derrière votre propre pare-feu.
GET et POST.
login avec le
Connexion avec gestion des cookies
1. Appelez l’action login, en lui transmettant l’identifiant de connexion et le mot de passe de
3. Laissez votre bibliothèque de gestion des cookies gérer le cookie BREEZESESSION.
Votre bibliothèque côté client renvoie le cookie au serveur dans un en-tête de requête lors
des prochains appels pour le reste de la session utilisateur. Il n’est pas nécessaire de définir
explicitement le cookie dans l’en-tête. Lorsque l’utilisateur se déconnecte, le cookie expire.
Connexion à l’aide du paramètre session
1. Avant de connecter l’utilisateur, appelez common-info pour obtenir la valeur du cookie
BREEZESESSION :
http://example.com/api/xml?action=common-info
Récupérez la valeur du cookie dans la réponse :
2.
<cookie>breezxq66rt43poai3if8</cookie>
3.
Connectez l’utilisateur, en spécifiant la valeur du cookie :
5. Utilisez le paramètre session avec la même valeur de cookie dans les appels suivants de
l’utilisateur jusqu’à la fin de la session :
https://example.com/api/xml?action=principal-list
&session=breezxq66rt43poai3if8
6.
Lorsque l’utilisateur se déconnecte ou que la session se termine, ne réutilisez pas la valeur
du cookie.
Connexion à Enterprise Hosted
Pour vous connecter directement à un ou plusieurs comptes hébergés, utilisez toujours l’action
login, mais spécifiez un identifiant de compte ou un nom de domaine en plus de l’identifiant
de connexion et du mot de passe de l’utilisateur. Vous pouvez spécifier un nom de domaine
pour éviter d’envoyer un identifiant de compte via Internet.
Avec un compte hébergé, vous ne pouvez pas utiliser l’authentification unique ou externe.
Vous devez transmettre les informations d’authentification de l’utilisateur pour Enterprise
Hosted, pas les informations de connexion d’un réseau externe.
REMARQUE
Il est important d’activer SSL sur votre compte Enterprise Hosted car vous envoyez des
identifiants utilisateur, des mots de passe et des informations de compte à votre compte
hébergé chez Adobe via Internet.
Connexion depuis une application25
Page 26
Connexion à Enterprise Hosted à l’aide d’un identifiant de compte
1. Avant de connecter l’utilisateur, appelez common-info avec le nom de domaine de votre
compte hébergé dans l’URL de la requête ou dans le paramètre
6. (Facultatif) Si vous préférez, vous pouvez appeler login avant common-info, extraire la
account-id et session :
valeur du cookie dans l’en-tête de la réponse, puis le gérer vous-même ou à l’aide d’une
bibliothèque de gestion des cookies. Pour plus d’informations, consultez la section
« Connexion avec gestion des cookies » ou « Connexion à l’aide du paramètre session ».
Connexion à Enterprise Hosted avec un nom de domaine
1. Avant de connecter l’utilisateur, appelez common-info avec le nom de domaine de votre
compte hébergé dans l’URL de la requête ou dans le paramètre
Le paramètre domain équivaut à account-id, mais en l’utilisant, vous évitez d’envoyer un
identifiant de compte via Internet, en particulier si vous utilisez une connexion non
cryptée.
6. Dans la réponse, recherchez le code d’état ok.
7. (Facultatif) Si vous préférez, vous pouvez appeler login avant common-info, extraire la
valeur du cookie dans l’en-tête de la réponse, puis le gérer vous-même ou à l’aide d’une
bibliothèque de code de gestion des cookies. Pour plus d’informations, consultez la section
« Connexion avec gestion des cookies » ou « Connexion à l’aide du paramètre session ».
Connexion à l’aide de l’authentification d’en-tête
HTTP
REMARQUE
Les instructions de cette section ne concernent qu’Enterprise Server.
Votre application peut utiliser un serveur central approuvé pour authentifier les utilisateurs
par l’intermédiaire d’une authentification unique et transmettre l’authentification (appelée ici
externe) de votre réseau à Enterprise Server, sans communiquer explicitement l’identifiant
utilisateur et le mot de passe Enterprise Server. (Pour des instructions détaillées sur la
définition et la configuration de l’authentification d’en-tête HTTP, consultez le Guide d’installation et de configuration d’Adobe Connect Enterprise).
Connexion depuis une application27
Page 28
Avec l’authentification d’en-tête HTTP, l’utilisateur se connecte à votre serveur
d’authentification. Lorsque l’utilisateur est authentifié, vous ajoutez alors un en-tête de
requête HTTP qui l’identifie ou vous configurez un serveur proxy pour le faire. Le filtre
d’authentification sous Connect Enterprise (appelé
HeaderAuthenticationFilter)
convertit l’identifiant de votre utilisateur en identifiant de connexion Connect Enterprise et
authentifie l’utilisateur.
Serveur d’authentification
Serveur proxy
ExternesExternes avec en-tête
Filtre d’authentification
Enterprise Server
Connect Enterprise Server
Base de
données SQL
Les filtres d’authentification convertissent les informations d’authentification externes en
informations de connexion Enterprise Server.
L’authentification externe vient s’ajouter à l’authentification standard de Connect Enterprise.
Chaque utilisateur devant accéder à Enterprise Server doit disposer d’un identifiant de
connexion et d’un mot de passe Enterprise Server valides.
Lorsque vous envoyez une demande de connexion à Enterprise Server avec des informations
d’authentification externe :
■ Le filtre d’authentification intercepte la requête et recherche un utilisateur Enterprise
Server présentant un champ
ext-login correspondant à vos informations
d’authentification externe.
■ S’il existe une correspondance, le filtre transmet vos informations d’authentification
externe à Enterprise Server et le serveur connecte l’utilisateur.
■ S’il n’existe pas de correspondance, le filtre transmet la demande de connexion au serveur,
qui affiche sa page de connexion. L’utilisateur doit alors se connecter à Enterprise Server.
■ Si l’utilisateur réussit à se connecter, Enterprise Server actualise le champ ext-login du
profil de l’utilisateur avec les informations de l’authentification externe de votre requête.
Ensuite, chaque fois que vous envoyez une requête avec les informations d’authentification
externe de cet utilisateur, Enterprise Server trouve une correspondance dans le champ
et l’utilisateur n’a pas besoin de se connecter à Connect Enterprise.
login
■ Si l’utilisateur ne peut pas se connecter, il n’est pas autorisé à accéder aux applications, au
ext-
contenu ou aux réunions Enterprise Server.
28Chapitre 2: Connexion et requêtes
Page 29
La procédure suivante décrit l’appel de login lorsque vous utilisez une authentification
d’en-tête HTTP.
Connexion à Enterprise Server à l’aide de l’authentification d’en-tête HTTP
1. Configurez vos serveurs réseau et Enterprise Server pour l’authentification d’en-tête HTTP
selon les instructions du Guide d’installation et de configuration de Connect Enterprise.
2. Dans [le répertoire de votre serveur]/appserv/conf/WEB-INF/web.xml, supprimez les balises
de commentaires qui entourent l’élément
HeaderAuthenticationFilter et ajoutez des balises de commentaires autour des autres
Ajoutez votre identifiant d’utilisateur authentifié dans l’en-tête de la requête HTTP.
Par défaut, utilisez le nom d’en-tête
x-user-id: joesmith
external-auth=use, mais pas les paramètres login ou password :
x-user-id :
Vous pouvez spécifier un nom d’en-tête différent en définissant la valeur de
HTTP_AUTH_HEADER dans le fichier custom.ini. Vous pouvez également configurer un
serveur proxy pour qu’il définisse la valeur de l’en-tête HTTP. Pour plus d’informations
dans les deux cas, consultez le Guide d’installation et de configuration de Connect Enterprise.
7. Dans la réponse, recherchez le code d’état ok.
8. Gérez la valeur de cookie BREEZESESSION renvoyée dans l’en-tête de la réponse. Pour ce
faire, vous avez deux possibilités.
Si vous utilisez une bibliothèque cliente qui gère les cookies Laissez votre
bibliothèque extraire la valeur du cookie, la stocker et la renvoyer au serveur lors des
prochaines requêtes de l’utilisateur.
30Chapitre 2: Connexion et requêtes
Page 31
Si vous gérez vous-même les cookies Récupérez la valeur du cookie BREEZESESSION
dans l’en-tête de la réponse. Stockez-la et renvoyez-la au serveur dans le paramètre
session de toutes les prochaines actions appelées pour le même utilisateur, tant que la
session de celui-ci est valide :
https://example.com/api/xml?action=principal=list
&session=breezs7zuepmy9wh2tseu
Veillez à ne pas réutiliser la valeur du cookie lorsque la session de l’utilisateur se termine.
Envoi d’une requête dans un document
XML
Il se peut que vous préfériez envoyer une requête HTTP POST au serveur pour garantir la
sécurisation et l’invisibilité des données pendant le transit. Dans ce cas, spécifiez le nom de
l’action et les paramètres dans un document XML.
Envoi d’une requête de document XML
1. Créez un document XML avec l’élément racine params et les éléments enfant param pour
■Vous ne pouvez envoyer qu’une action dans l’élément racine params. Vous ne pouvez
pas demander l’exécution séquentielle de plusieurs actions par lot.
■Le document XML que vous envoyez doit être valide et sa mise en forme correcte.
Testez la validité du document dans un éditeur XML avant de l’envoyer.
2. Rédigez le code qui envoie la requête HTTP POST à Connect Enterprise et reçoit la réponse
XML.
Le code spécifique varie selon votre langage de programmation et votre environnement de
développement.
3. Dans votre code, envoyez le document XML à Connect Enterprise dans le corps de la
requête HTTP
■Lisez le document XML dans la requête.
■Veillez à définir un en-tête content-typetext/xml ou application/xml.
POST.
Envoi d’une requête dans un document XML31
Page 32
Analyse d’une réponse avec XPath
Lorsque vous recevez une réponse XML de Connect Enterprise, vous devez pouvoir l’analyser
pour en extraire les éléments XML nécessaires.
Si vous utilisez un langage de type Java™, avec un analyseur XML (tel que Xerces ou JDOM)
installé, vous pouvez analyser une réponse XML, y sélectionner des valeurs dans les noeuds,
puis utiliser ces valeurs.
Utilisation de XPath pour analyser une réponse
1. Rédigez une méthode appelant une ou plusieurs actions. Créez une instance de la classe
XPath afin de pouvoir utiliser les expressions XPath. Appelez les actions, lisez la réponse
XML et utilisez la syntaxe XPath pour sélectionner les valeurs nécessaires :
public String scoUrl(String scoId) throws XMLApiException {
try {
Element e = request("sco-info", "sco-id=" + scoId);
if(!(codePath.valueOf(e).equalsIgnoreCase("ok")))
Vous pouvez également utiliser un modèle de chaîne correspondant pour vérifier le code
d’état
ok. Une action réussie renvoie toujours la réponse suivante :
<?xml version="1.0" encoding="utf-8" ?>
<results>
<status code="ok" />
</results>
Dans la réponse, vous pouvez rechercher le modèle ok ou code=”ok”.
32Chapitre 2: Connexion et requêtes
Page 33
Analyse d’une réponse d’erreur
Lorsqu’une action API se termine avec succès, elle renvoie le code d’état ok. Si l’appel échoue,
elle peut également renvoyer l’un des codes d’état suivants :
invalid Indique que l’appel n’est pas valide pour une raison quelconque, généralement une
syntaxe incorrecte.
no-access Indique que l’utilisateur actif n’est pas autorisé à appeler l’action et inclut un
attribut
no-data Indique qu’il n’y a pas de données disponibles à renvoyer par l’action là où celle-ci
en renverrait habituellement.
too-much-data Signifie que l’action devrait renvoyer un seul résultat mais en renvoie en
réalité plusieurs.
Lorsque le code d’état est
désigne le paramètre de requête manquant ou incorrect :
<?xml version="1.0" encoding="utf-8" ?>
<results>
</results>
Lorsque le code d’état est no-access, l’attribut subcode en donne la raison :
<?xml version="1.0" encoding="utf-8" ?>
<results>
</results>
Toutes les valeurs valides pour code, subcode et invalid sont décrites dans l’status, dans la
référence de l’API. Votre application doit lire et gérer les codes et sous-codes d’état.
subcode pour plus d’informations.
invalid, la réponse présente également un élément invalid qui
String code = codePath.valueOf(el);
String subcode = subcodePath.valueOf(el);
StringBuffer status = new StringBuffer();
if(null != code && code.length() > 0)
status.append(code);
if(null != subcode && subcode.length() > 0)
status.append(" - " + subcode);
return status.toString();
}
Analyse d’une réponse d’erreur33
Page 34
2. Lorsque vous appelez une action, analysez l’état de la réponse.
3. Si l’état n’est pas ok, renvoie une valeur null, affiche le code d’état d’erreur de débogage
ou génère une exception d’application.
L’action à suivre dépend de l’appel effectué et de la conception de votre application.
Déconnexion d’un utilisateur
Lorsque l’utilisateur se déconnecte, la session se termine et Connect Enterprise invalide le
cookie
BREEZESESSION en le définissant comme nul et en utilisant une date d’expiration
dépassée. Par exemple, si vous appelez
apparaît dans l’en-tête de la réponse, définissant une valeur de cookie vide et une date
d’expiration vieille d’un an :
Si vous gérez le cookie BREEZESESSION, invalidez la valeur de sorte qu’elle ne soit pas réutilisée
après la déconnexion de l’utilisateur.
Déconnexion d’un utilisateur et invalidation du cookie de la session
1. Appelez logout pour déconnecter l’utilisateur :
https://example.com/api/xml?action=logout
2.
Recherchez le code d’état ok pour être certain que la déconnexion a réussi :
3. Définissez la valeur du cookie sur null ou invalidez-la. Par exemple dans ce fragment de
code Java, la variable
public void logout() throws XMLApiException {
request("logout", null);
this.breezesession = null;
}
breezesession stocke la valeur du cookie et est définie sur null :
logout le 29 août 2006, cette méthode Set-Cookie
34Chapitre 2: Connexion et requêtes
Page 35
CHAPITRE 3
Notions de base
Maintenant que vous connaissez l’architecture d’Adobe® Connect™ Enterprise Server et
d’Adobe Connect Enterprise Hosted et que vous savez tester un appel d’API dans un
navigateur, vous êtes prêt(e) à envoyer des requêtes d’API XML et à analyser leurs réponses.
Pour commencer à exploiter les services Web d’Adobe Connect Enterprise, vous devez
comprendre trois concepts essentiels :
■ Les mandants, qui sont des utilisateurs et des groupes.
■ Les SCO (Shareable Content Objects), ou objets de contenu partageables, que constituent
les réunions, les cours et à peu près tout contenu pouvant être créé dans Connect
Enterprise. Ces SCO (prononcez sko) sont conformes à la spécification du standard
SCORM (Shareable Content Object Reference Model) et peuvent être utilisés avec un
système de gestion de la formation (LMS, Learning Management System).
■ Les autorisations, qui précisent comment les mandants peuvent agir sur les objets.
Ce chapitre décrit les tâches de base pouvant être effectuées avec les services Web, quelles que
soient les applications Connect Enterprise sous licence. La plupart des tâches sont décrites
pour une exécution dans un navigateur. Pour effectuer l’appel depuis une application,
traduisez la requête XML dans le langage que vous utilisez. (Vous trouverez un exemple de
cette opération en Java™ à la section « Envoi de requêtes XML ».)
3
Recherche d’un principal-id
Un mandant est un utilisateur ou un groupe disposant d’une autorisation définie pour
interagir avec un SCO sur le serveur. Vous pouvez créer des utilisateurs et des groupes pour
votre organisation et modifier leurs autorisations.
Connect Enterprise dispose également de groupes prédéfinis : Administrateurs, Auteurs,
Gestionnaires de formation, Gestionnaires d’événements, Hôtes de réunions et Hôtes de
séminaires. Vous pouvez ajouter des utilisateurs et des groupes dans les groupes prédéfinis,
mais vous ne pouvez pas modifier les autorisations de ces derniers.
35
Page 36
Chaque utilisateur et groupe de Connect Enterprise possède un principal-id. Dans certains
appels d’API, le
principal-id est appelé group-id ou user-id afin de le différencier des
autres valeurs. La valeur de l’identifiant qui désigne un utilisateur ou un groupe est toujours la
même, quel que soit son nom. Vous pouvez vérifier la syntaxe des actions dans le Chapitre 6,
Référence des actions.
Obtention du principal-id d’un utilisateur ou d’un groupe
1. Appelez principal-list avec un filtre :
https://example.com/api/xml?action=principal-list&filter-name=jazz doe
Il est préférable d’utiliser filter-name, filter-login ou filter-email pour obtenir
une correspondance exacte. Faites attention avec
filter-like-name car ce filtre peut
affecter les performances du serveur.
2. Dans les éléments principal de la réponse, recherchez le principal-id :
1. Appelez common-info après la connexion de l’utilisateur :
https://example.com/api/xml?action=common-info
2.
Dans les éléments user de la réponse, recherchez le user-id :
<user user-id="2007124930" type="user">
<name>jazz doe</name>
<login>jazz@doe.com</login>
</user>
Ici, le principal-id est appelé user-id car il représente toujours un utilisateur
authentifié dans Connect Enterprise. Un groupe ne peut pas se connecter au serveur. Vous
pouvez transmettre la valeur
user-id en tant que principal-id dans les autres actions.
36Chapitre 3: Notions de base
Page 37
Liste des mandants ou des invités
Un mandant présentant un typeuser est un utilisateur Connect Enterprise enregistré, tandis
qu’un utilisateur présentant un
qu’invité. Le serveur capture les informations relatives à l’invité et donne un
ce dernier.
Liste de tous les mandants présents sur le serveur
1. Appelez principal-list sans paramètre :
https://example.com/api/xml?action=principal-list
Cet appel renvoyant tous les utilisateurs Connect Enterprise, attendez-vous à une réponse
assez volumineuse.
2. Dans les éléments principal de la réponse, recherchez les valeurs désirées :
type guest est entré dans une salle de réunion en tant
principal-id à
Liste des mandants ou des invités37
Page 38
Création d’utilisateurs
Pour créer un nouvel utilisateur, vous devez disposer de droits d’administrateur. Adobe
recommande de créer un utilisateur appartenant au groupe
pour effectuer des appels d’API requérant des droits Administrateur.
Création d’un nouvel utilisateur et envoi d’un message électronique de
bienvenue
1. Dans votre application, connectez-vous en tant qu’Administrateur.
Pour connaître les différentes façons de se connecter, consultez la section « Connexion
depuis une application ».
2. Appelez principal-update avec au moins ces paramètres :
Création d’un nouvel utilisateur sans utiliser l’adresse électronique comme
identifiant de connexion
1. Dans Enterprise Manager, choisissez Administration > Utilisateurs et Groupes > Modifier
les stratégies de nom d’utilisateur et de mot de passe. Assurez-vous que l’option Utiliser
l’adresse de messagerie comme identifiant de connexion soit définie sur Non.
2. Dans votre application, connectez-vous en tant qu’Administrateur.
3. Appelez principal-update pour créer le nouvel utilisateur, en transmettant les
Dans la réponse, ext-login a par défaut la même valeur que login, jusqu’à ce que
l’utilisateur réussisse à se connecter à l’aide de l’authentification externe (voir la section
« Connexion à l’aide de l’authentification d’en-tête HTTP »).
Mise à jour des utilisateurs
Une fois les utilisateurs créés, il est souvent nécessaire d’actualiser leurs informations. Pour
actualiser les champs standard définis pour les utilisateurs, appelez
principal-id de l’utilisateur.
Les champs standard incluent
des champs personnalisés pour le mandants, utilisez
email, login, first-name et last-name. Si vous avez défini
acl-field-update pour les mettre à
jour.
Pour mettre à jour les utilisateurs, vous devez disposer de droits Administrateur, votre
application doit donc d’abord se connecter en tant qu’utilisateur du groupe
pouvez pas vous connecter en tant qu’utilisateur, puis demander la mise à jour de son profil.
principal-update avec le
admins. Vous ne
Connexion et mise à jour d’un utilisateur
1. Connectez-vous en tant qu’utilisateur Administrateur.
2. Appelez principal-list avec un filtre pour obtenir le principal-id de l’utilisateur (voir
la section « Recherche d’un principal-id »).
3. Appelez principal-update pour mettre à jour l’utilisateur :
Les champs personnalisés sont des champs de données supplémentaires que vous définissez.
Vous pouvez définir jusqu’à huit champs personnalisés pour un mandant ou un SCO en
utilisant
Après avoir défini le champ personnalisé, vous pouvez définir sa valeur par défaut soit en la
modifiant dans Connect Enterprise Manager, soit en appelant
Pour spécifier que la valeur ne peut être mise à jour que par l’intermédiaire de l’API, appelez
custom-field-update avec le paramètre object-type=object-type-read-only.
Définition d’un champ personnalisé et configuration pour un utilisateur
1. Commencez par créer le champ avec custom-field-update :
2. Dans l’élément field de la réponse, recherchez le field-id :
3.
4. Appelez acl-field-update pour définir la valeur du champ, en transmettant un field-
Le champ name définit le nom du champ tel que votre application l’affiche, alors soignez
son orthographe et les majuscules. Le champ personnalisé de cet exemple est défini pour
tous les mandants de Connect Enterprise.
Tous les objets de Connect Enterprise sont des Objets de contenu partageables ou SCO
(Shareable Content Objects). Le terme partageable provient des systèmes de gestion de la
formation dans lesquels le contenu est combiné en cours ou en curriculums et partagé
entre eux.
Sur le serveur, un SCO ne peut être qu’un objet de contenu combiné avec d’autres objets de
contenu pour former un cours ou un curriculum. Les cours, les curriculums, les présentations
et les autres types de contenu sont des SCO. Les réunions, les événements, les dossiers, les
arborescences, les liens, les fichiers graphiques et tous les autres objets sont également des
SCO.
Chaque SCO possède un identifiant numérique unique appelé
dans l’ensemble du serveur. Dans le cas d’un compte hébergé, le
les comptes.
Chaque SCO possède également un type, tel que
Vous pouvez voir les valeurs de
En étudiant les réponses XML de divers appels, vous remarquerez plusieurs caractéristiques
des SCO :
■ L’identifiant des SCO est appelé sco-id dans certaines actions, mais peut également être
appelé
folder-id, acl-id ou par un autre nom dans d’autres actions. Il s’agit du même
identifiant unique.
■ Chaque SCO peut être accédé par divers mandants, qu’il s’agisse d’utilisateurs ou de
groupes. Les mandants spécifiques qui peuvent accéder à un SCO sont définis dans les
listes de contrôle d’accès ou ACL.
■ Chaque SCO présente une URL unique, en deux parties : un nom de domaine (par
exemple
pouvez concaténer ces deux parties pour former l’URL complète accédant au SCO.
■ Chaque SCO présente un chemin de navigation décrivant l’endroit où il réside dans la
hiérarchie des dossiers.
■ Chaque SCO présente une autorisation définie pour chaque mandant pouvant y accéder.
■ Certains SCO présentent des champs de description, chaînes de texte donnant des
informations sur le SCO.
Il est souvent nécessaire de trouver l’identifiant d’un SCO ou certaines informations s’y
rapportant. Les SCO sont classés dans une hiérarchie de dossiers spécifique, dans laquelle les
dossiers présentent des noms indiquant s’ils se trouvent au niveau supérieur, s’ils contiennent
des modèles ou du contenu partagé ou s’ils détiennent des modèles ou du contenu
d’utilisateur.
Lorsque vous appelez l’action
types de ces dossiers sont différents :
Les dossiers présentés dans cet exemple sont destinés à des réunions, mais les dossiers d’autres
types de SCO suivent le même modèle. Chaque type de dossier stocke certains types d’objets,
et certains droits d’accès, comme suit :
Contenu, cours, réunions, événements, séminairesIl s’agit là de dossiers partagés, tels
que Réunions partagées, Formation partagée, etc. L’administrateur de Connect Enterprise a
accès à ce dossier. Il peut accorder une autorisation de gestion à n’importe quel utilisateur,
mais seuls les membres du groupe prédéfini associé au dossier peuvent y créer du contenu ou
de nouvelles réunions.
user-content, user-meetings, user-courses, user-events Ces dossiers contiennent
chacun un dossier pour chaque utilisateur autorisé à y créer du contenu (par exemple, un
dossier pour chaque hôte de réunion ou développeur de formation).
my-courses, my-events, my-meetings, my-meeting-templates, my-content Les
utilisateurs créent leur propre contenu dans ces dossiers et disposent d’une autorisation de
gestion sur le contenu. Par exemple, les hôtes de réunions créent des réunions dans leur dossier
my-meetings et disposent d’une autorisation de gestion sur ces réunions.
shared-meeting-templates Ce dossier, situé dans le dossier Réunions partagées, contient
des modèles de réunion et hérite des autorisations de son dossier parent.
Vous pouvez dresser la liste du contenu de n’importe quel dossier pour obtenir des
informations sur un SCO spécifique. Lorsque vous devez rechercher un SCO sans connaître
son
sco-id, parcourez les dossiers à l’aide de sco-shortcuts et de sco-expanded-
contents
. N’utilisez pas sco-search car il ne renvoie que certains types de SCO.
Recherche d’un SCO sans connaître son sco-id
1. Appelez sco-shortcuts pour obtenir la liste des dossiers racine dans Connect Enterprise :
https://example.com/api/xml?action=sco-shortcuts
2.
Dans la réponse, recherchez le type du dossier racine devant logiquement contenir le SCO,
par exemple,
3. Dans l’élément sco qui en résulte, recherchez un sco-id :
<name>A Day in the Life Resources</name>
<url-path>/f28435879/</url-path>
<date-created>2006-06-12T14:47:59.903-07:00</date-created>
<date-modified>2006-06-12T14:47:59.903-07:00</date-modified>
</sco>
<date-begin>2006-06-12T14:45:00.000-07:00</date-begin>
<date-created>2006-06-12T14:47:59.903-07:00</date-created>
<date-modified>2006-06-12T14:47:59.903-07:00</date-modified>
<name>A Day in the Life</name>
<url-path>/day/</url-path>
</sco>
46Chapitre 3: Notions de base
Page 47
Construction de l’URL d’un SCO
1. Appelez sco-shortcuts :
https://example.com/api/xml?action=sco-shortcuts
2.
Dans la réponse, recherchez la valeur domain-name dans les éléments sco :
L’élément url-path présente des barres obliques de fin et de début. Vous pouvez obtenir
l’élément
url-path avec report-my-meetings, report-my-training ou tout autre
appel qui le renvoie.
5. Concaténez url-path et domain-name :
http://example.com/f2006258748/
Téléchargement de fichiers
Vous pouvez télécharger des fichiers compressés depuis Connect Enterprise vers l’ordinateur
local d’un utilisateur. Un fichier compressé est un SCO. Pour le télécharger, vous devez
construire une URL de téléchargement pointant vers le fichier compressé, ressemblant à cela :
Assurez-vous de supprimer la barre oblique de fin dans la valeur url-path avant de lui
ajouter
.zip (afin d’obtenir une valeur comme /quiz.zip et non /quiz/.zip).
Vérification des autorisations
Les autorisations définissent la façon dont un mandant peut interagir avec un SCO.
Le mappage spécifiant les autorisations dont dispose un mandant pour un SCO particulier est
appelé liste de contrôle d’accès ou ACL. Une liste ACL comprend trois éléments d’information :
■ L’identifiant d’un mandant (un principal-id).
■ L’identifiant du SCO, du compte ou du mandant sur lequel s’effectue l’action. Dans les
appels d’autorisation, il est appelé
sco-id, account-id ou principal-id.
appelé
■ Un mot-clé qui indique le niveau d’autorisation dont dispose le mandant, correspondant à
l’une des valeurs valides de
48Chapitre 3: Notions de base
acl-id. Dans les autres appels, l’identifiant peut être
permission-id.
Page 49
Vérification de l’autorisation dont dispose un mandant sur un SCO
1. Appelez permissions-info avec un acl-id et un principal-id :
Les valeurs d’autorisations valides sont énumérées dans permission-id.
Vérification des autorisations49
Page 50
50Chapitre 3: Notions de base
Page 51
CHAPITRE 4
Réunions
Les applications personnalisées peuvent afficher, créer et supprimer des réunions Adobe®
Acrobat® Connect™ Professional dans une application Web, un portail ou un autre
environnement. Si vous êtes au début de la conception de votre application de réunion,
vous préférerez peut-être vous référer à l’exemple d’application fourni dans le CD du
produit (et également consulter la section Annexe A, Exemple d’application).
Lorsque les utilisateurs cliquent sur l’URL d’une salle de réunion, ils accèdent à Acrobat
Connect Professional, qui héberge la salle. Adobe Connect Enterprise Server ou Adobe
Connect Enterprise Hosted diffuse ensuite le contenu audio, vidéo et multimédia aux
utilisateurs de la salle de réunion.
Adobe recommande les actions suivantes pour gérer les applications de réunion :
report-my-meetings Pour afficher les réunions d’un utilisateur.
sco-update Pour créer une salle de réunion ou actualiser ses informations.
permissions-update Pour ajouter un hôte, un présentateur et des participants à une
réunion.
report-bulk-consolidated-transactions Pour calculer l’utilisation des réunions, en
particulier le temps passé par chaque utilisateur dans la réunion.
report-quiz-interactions Pour obtenir les résultats d’un sondage de réunion.
Certaines actions de gestion des réunions nécessitent des droits Administrateur, tels que le
signalent les instructions relatives aux tâches. Créez un utilisateur Connect Enterprise membre
du groupe
admins pour votre application ; vous l’utiliserez pour effectuer ces appels.
4
51
Page 52
Recherche de réunions
Il est souvent nécessaire de localiser le sco-id d’une réunion pour pouvoir y inviter des
utilisateurs, obtenir ses informations de rapports ou l’actualiser d’une manière ou d’une autre.
Vous devez bien connaître la structure des dossiers dans lesquels sont stockées les réunions. Par
défaut, les réunions sont stockées dans le dossier Mes réunions de l’hôte (appelé
dans l’API). Pour plus d’informations sur la structure des dossiers, consultez la section
« Caractéristiques des SCO ».
Recherche du sco-id d’une réunion
1. Appelez sco-shortcuts :
https://example.com/api/xml?action=sco-shortcuts
2.
Dans la réponse, recherchez le sco-id d’un dossier de réunions susceptible de contenir la
réunion :
<name>Intro to Film</name>
<url-path>/film/</url-path>
<date-begin>2006-06-09T14:00:00.000-07:00</date-begin>
<date-end>2006-06-09T20:00:00.000-07:00</date-end>
<date-modified>2006-06-09T14:07:13.767-07:00</date-modified>
<duration>06:00:00.000</duration>
</sco>
my-meetings
52Chapitre 4: Réunions
Page 53
Affichage des réunions
Dans votre application, vous pouvez dresser la liste des réunions Acrobat Connect
Professional, par exemple les réunions actuelles ou prévues d’un utilisateur.
Une application peut connecter un utilisateur et afficher ses réunions, ou ajouter l’utilisateur à
une réunion, puis afficher les réunions. Afficher les réunions de l’utilisateur signifie dresser la
liste du contenu de son dossier
Affichage des réunions d’un utilisateur
1. Connectez l’utilisateur (voir la section « Connexion depuis une application »).
2. Appelez report-my-meetings pour dresser la liste des réunions de l’utilisateur :
Plusieurs possibilités vous permettent de construire l’URL d’une salle de réunion. La meilleure
action à appeler dépend de la façon dont votre application se connecte et du stade où vous en
êtes dans votre application.
Par défaut, la salle de réunion est créée dans le dossier
Création de l’URL d’une salle de réunion pour laquelle l’utilisateur est hôte
1. Si vous êtes connecté(e) en tant qu’utilisateur et souhaitez créer l’URL d’une réunion dans
■ Privée, équivaut à Seuls les utilisateurs enregistrés et les invités acceptés sont admis à la réunion
principal-id=public-access&permission-id=denied
principal-id et permission-id :
Si une réunion est privée, les utilisateurs enregistrés invités en tant que participants peuvent y
accéder en cliquant sur l’URL de la salle de réunion et en se connectant. Les utilisateurs qui ne
sont pas invités peuvent se connecter en tant qu’observateurs. L’hôte de la réunion reçoit la
demande d’accès d’un observateur (appelée frappes à la porte) et l’accepte ou la refuse.
Création de réunions55
Page 56
Création d’une réunion publique et ajout d’un hôte, d’un présentateur et de
participants
1. Appelez principal-list pour vérifier que l’utilisateur qui crée la réunion Acrobat
Appelez permissions-update pour ajouter un hôte, un présentateur et des invités.
4. Créez l’URL de la salle de réunion (voir la section « Création des URL de salles de
réunion »).
Création de réunions personnalisées
Lorsque vous créez une réunion Acrobat Connect Professional, vous pouvez lui affecter un
modèle de salle lui donnant une apparence personnalisée. Si vous n’affectez aucun modèle
spécifique, la salle est créée avec le modèle de réunion par défaut.
Pour modifier un modèle de salle de réunion, ouvrez Adobe Enterprise Manager et cliquez sur
l’URL du modèle. Vous pouvez modifier le modèle pendant qu’il est dans le dossier des
modèles de réunion (Mes modèles ou Modèles partagés), si vous disposez de droits de
modification pour le dossier concerné.
Création de réunions personnalisées57
Page 58
Création d’une salle de réunion à l’aide d’un modèle
1. Connectez-vous en tant qu’utilisateur Administrateur de votre application.
2. Appelez sco-shortcuts :
https://example.com/api/xml?action=sco-shortcuts
3.
Dans la réponse, recherchez le sco-id d’un dossier contenant des modèles de réunion :
Continuez à définir les autorisations de la réunion et ajoutez des participants, un hôte et un
source-sco-id :
présentateur (voir la section « Création de réunions »).
8. Créez l’URL de la salle de réunion (voir la section « Création des URL de salles de
réunion »).
Invitation d’utilisateurs aux réunions
Après avoir créé une réunion Acrobat Connect et ajouté des participants et des présentateurs,
vous pouvez leur envoyer des invitations électroniques. Pour envoyer une invitation à une
réunion, vous avez besoin des informations s’y rapportant, en particulier de son nom, du nom
et de l’adresse électronique de l’hôte, de l’URL de la salle, de la date et de l’heure de début et
du nom et de l’adresse électronique des participants (ou du présentateur).
Vous pouvez rédiger un message électronique avec toute technique fonctionnant avec votre
interface utilisateur. Récupérez les informations spécifiques sur la réunion à l’aide de la
procédure suivante.
58Chapitre 4: Réunions
Page 59
Envoi d’un message électronique aux participants d’une réunion
1. Appelez sco-info avec le sco-id de la réunion :
Ces éléments concernent l’expéditeur du message électronique, c’est-à-dire l’hôte de la
réunion.
60Chapitre 4: Réunions
Page 61
Suppression d’utilisateurs de la réunion
Il arrive parfois qu’un utilisateur soit invité à une réunion Acrobat Connect Professional en
tant que participant ou présentateur mais doive ensuite être retiré de la liste des participants.
La suppression de l’utilisateur donne des résultats différents, selon que la réunion est publique
ou privée :
■ Dans le cas d’une réunion publique L’autorisation de l’utilisateur (participant,
présentateur ou hôte) est supprimée, mais l’utilisateur peut encore accéder à la réunion en
tant qu’invité.
■ Dans le cas d’une réunion privée L’autorisation de l’utilisateur est supprimée et il ne
peut accéder à la réunion qu’en tant qu’invité et avec l’accord de l’hôte.
Pour supprimer l’autorisation d’accès d’un utilisateur, appelez
valeur d’autorisation spéciale,
permission-id=remove.
Si la réunion est en cours et que l’utilisateur y participe déjà, il n’est pas supprimé de la
réunion. Toutefois, lorsque sa session expire, il ne peut plus y accéder.
Suppression de l’autorisation d’accès d’un utilisateur à une réunion
1. (Facultatif) Appelez permissions-info pour vérifier l’autorisation du mandant à accéder
Après avoir créé des utilisateurs et des réunions Acrobat Connect Professional, vous pouvez
calculer l’utilisation des réunions. Ce calcul s’effectue souvent avec l’une des méthodes
suivantes :
■ Temps passé par chaque utilisateur dans une réunion spécifique, en minutes
■ Nombre de participants simultanés à la réunion
Calcul du taux d’utilisation d’une réunion61
Page 62
Le temps passé par un utilisateur dans une réunion est mesuré par une transaction,
correspondant à l’interaction entre un mandant et un SCO (dans ce cas, entre un utilisateur et
une réunion). Les dates et heures auxquelles une transaction commence et se termine sont
renvoyées par
report-bulk-consolidated-transactions.
Le nombre de participants pouvant participer simultanément à une réunion dépend de votre
licence Connect Enterprise. Vous pouvez vérifier votre limite et le nombre maximal de
participants atteint pendant une période donnée.
Calcul du temps passé dans des réunions par un utilisateur
1. Appelez report-bulk-consolidated-transactions, en filtrant les réunions et
Dans votre application, calculez le temps écoulé entre les deux dates.
Pour ce faire, un moyen (dans Java™) consiste à écrire une méthode d’utilitaire qui
convertit les valeurs de la date ISO 8601 renvoyées dans la réponse en objet
GregorianCalendar. Convertissez ensuite chaque date GregorianCalendar en
millisecondes, calculez la différence entre les heures de création et de fermeture, puis
convertissez la différence en minutes.
4. Répétez l’opération pour toutes les transactions de réunion répondant à vos critères et
additionnez les temps d’utilisation de la réunion.
62Chapitre 4: Réunions
Page 63
Obtention du nombre de participants simultanés à une réunion
1. Appelez report-quotas pour vérifier votre quota d’utilisateurs simultanés à une réunion :
https://example.com/api/xml?action=report-quotas
2.
Dans la réponse, recherchez l’élément quota présentant une valeur quota-id
concurrent-user-per-meeting-quota et lisez la valeur de soft-limit :
La valeur soft-limit correspond à la limite définie par votre licence Connect Enterprise.
La valeur
réellement les utilisateurs d’accéder aux réunions et correspond généralement à
limit
3. Appelez report-meeting-concurrent-users pour vérifier le nombre maximal autorisé
limit correspond à la valeur à partir de laquelle Connect Enterprise empêchera
soft-
.
de participants simultanés à une réunion sur votre serveur ou dans votre compte :
Une ou plusieurs archives peuvent être enregistrées pour chaque réunion Acrobat Connect
Professional. Lorsque la réunion a lieu chaque semaine, par exemple, une archive peut être
enregistrée pour chaque session.
Une archive de réunion est identifiée par les éléments
valeur
icon fonctionne comme une sous-catégorie de type, pour identifier le type de
contenu.
type=content et icon=archive. La
Obtention des archives de réunion63
Page 64
Liste des archives d’une salle de réunion
1. Obtenez le sco-id de la réunion (voir « Recherche du sco-id d’une réunion »).
2. Appelez sco-expanded-contents avec le sco-id de la réunion et filter-icon=archive
pour obtenir la liste de toutes ses archives associées :
Vous pouvez également ajouter un filtre pour affiner la réponse, par exemple :
■filter-response pour obtenir tous les utilisateurs ayant donné une réponse
spécifique ;
■filter-interaction-id pour obtenir toutes les réponses d’un sondage (une réunion
peut comporter plusieurs sondages).
4. Dans la réponse, recherchez l’élément response, name ou d’autres valeurs :
<row display-seq="1" transcript-id="2007071200"
interaction-id="2007027923" sco-id="2007071193" score="0">
<name>jazz doe</name>
<sco-name>Thursday Meeting</sco-name>
<date-created>2006-08-03T12:29:09.687-07:00</date-created>
<description>What is your favorite color?</description>
<response>4</response>
</row>
Obtention des résultats du sondage d’une réunion65
Page 66
Démarrage des réunions avec
authentification externe
Après qu’un utilisateur se soit connecté à votre réseau et que vous l’ayez authentifié sur le
serveur Connect Enterprise ou Enterprise Hosted à l’aide d’informations d’authentification
externe, vous pouvez l’autoriser à accéder à une réunion en tant que participant ou invité sans
qu’une seconde connexion à Acrobat Connect Professional ne soit nécessaire.
Démarrage d’une réunion et accès de l’utilisateur en tant que participant
1. Une fois l’utilisateur authentifié sur votre réseau, connectez-le à Connect Enterprise (voir
la section Connexion à l’aide de l’authentification d’en-tête HTTP pour plus d’informations).
2. Obtenez la valeur du cookie BREEZESESSION de la session de l’utilisateur, de l’une des
manières suivantes :
■Appelez common-info et récupérez la valeur de cookie dans la réponse :
<cookie>breezma6zor9rdfps8h6a</cookie>
■Récupérez la valeur du cookie BREEZESESSION dans l’en-tête de la réponse :
Set-Cookie: BREEZESESSION=breezqw4vtfarqxvf9pk2;
domain=.macromedia.com;path=/
3.
Créez une URL de salle de réunion (pour plus d’informations, voir la section Création des
URL de salles de réunion).
4. Ajoutez un paramètre session et la valeur du cookie BREEZESESSION dans l’URL de la
Démarrage des réunions avec authentification externe67
Page 68
68Chapitre 4: Réunions
Page 69
CHAPITRE 5
Formations
Un portail ou une application personnalisée de formation peut accéder à Adobe® Connect™
Training pour afficher les cours de formation disponibles, y inscrire des utilisateurs ou les
autoriser à s’inscrire eux-mêmes, dresser la liste de tous les cours et curriculums auxquels un
utilisateur est inscrit et générer divers rapports. Connect Training présente deux types de
modules de formation : les cours et les curriculums.
Un cours correspond à du contenu (par exemple une présentation) associé à un ensemble
donné de stagiaires inscrits et à leur suivi individuel. Le cours peut être affiché et administré
indépendamment ou en tant que partie intégrante d’un curriculum.
Un curriculum est un groupe de cours et autre contenu pédagogique qui accompagne les
étudiants dans leur cursus de formation. Un curriculum se compose essentiellement de cours
Connect Training, mais peut inclure d’autres éléments, tels que du contenu et des réunions.
Comme pour les cours, vous pouvez générer des rapports afin d’effectuer le suivi des inscrits
au fur et à mesure qu’ils avancent dans le curriculum et vous assurer ainsi qu’ils atteignent
leurs objectifs pédagogiques.
Les cours et le contenu peuvent être des modules d’un curriculum, et un objet de contenu
peut être utilisé dans un certain nombre de cours et de curriculums. Dans Connect Training,
les objets de contenu, les cours et les curriculums sont tous des SCO et possèdent un
unique. Les objets de contenu et les cours peuvent être combinés et réutilisés, conformément
au standard SCORM.
Lorsque vous développez des applications de formation, Adobe vous conseille d’utiliser les
actions d’API XML suivantes :
permissions-update Pour inscrire les utilisateurs aux cours et s’assurer qu’ils disposent des
autorisations appropriées pour y accéder.
group-membership-update Pour ajouter des utilisateurs à des groupes lorsque vous
souhaitez inscrire un groupe.
report-my-training Pour dresser la liste de tous les cours et curriculums auxquels
l’utilisateur actif est inscrit, avec l’URL permettant d’accéder au cours ou au curriculum.
sco-id
5
69
Page 70
report-curriculum-taker Pour obtenir des informations sur la progression d’un utilisateur
au sein d’un curriculum.
report-user-trainings-taken Pour afficher le dernier état de tous les cours et curriculums
d’un utilisateur.
report-user-training-transcripts Pour dresser la liste de tous les relevés de notes et de
toutes les notes d’un utilisateur.
Ces actions fonctionnent sur les cours, les curriculums et les dossiers de formation et utilisent
les autorisations accordées sur les objets dans la bibliothèque des formations.
Autorisations de la bibliothèque des
formations
Le dossier Formation partagée, visible dans Adobe Connect Enterprise Manager, est
également appelé bibliothèque des formations. Ce dossier est également appelé
la réponse de l’action
Chaque dossier, cours et curriculum de la bibliothèque est un SCO. Lorsque vous naviguez
dans la bibliothèque des formations, le
navigateur, mais vous pouvez également le récupérer en appelant
expanded-contents
sur un dossier de la bibliothèque des formations.
sco-id de chaque objet est visible dans l’URL du
sco-contents ou sco-
Chaque cours, curriculum ou objet de contenu de la bibliothèque des formations dispose
d’autorisations qui définissent quels utilisateurs peuvent y accéder. Lorsque vous concevez
votre application, gardez à l’esprit ces niveaux d’autorisation :
Autorisations des inscrits Les cours et les curriculums disposent d’autorisations qui
définissent quels utilisateurs y sont inscrits et peuvent y accéder. Les deux autorisations
disponibles sont Inscrit et Refusé.
Autorisations de la bibliothèque des formations Les cours, les curriculums et les dossiers
de la bibliothèque des formations disposent d’une autorisation de gestion ou d’accès refusé.
L’autorisation de gestion signifie que l’utilisateur peut créer, supprimer, modifier ou accorder
des autorisations. Par défaut, les utilisateurs disposent d’une autorisation de gestion pour leurs
propres dossiers de formation et les administrateurs pour tous les dossiers de la bibliothèque
des formations.
courses dans
70Chapitre 5: Formations
Page 71
Un Administrateur peut accorder à un utilisateur l’autorisation de gestion sur un cours, un
curriculum ou un dossier individuel avec
accordées à un utilisateur avec
permissions-info.
Dans les appels d’API XML, vous lisez, utilisez ou définissez les valeurs de
dans le cadre de votre travail avec la bibliothèque des formations. Ces valeurs de
s’appliquent aux cours et aux curriculums :
id
view L’utilisateur a accès au cours ou au curriculum et l’autorisation est Inscrit.
denied L’accès est refusé à l’utilisateur et l’autorisation est Refusé.
permissions-update ou vérifier les autorisations
permission-id
permission-
Vous devez connaître l’autorisation accordée à l’utilisateur pour un dossier avant d’exécuter un
appel d’API. Connectez-vous en tant qu’utilisateur disposant d’une autorisation appropriée
ou, au besoin, en tant qu’Administrateur de votre application. Ces valeurs de
permission-id
s’appliquent aux dossiers de formation :
manage L’utilisateur peut ajouter, supprimer, modifier ou accorder des autorisations sur les
cours, les curriculums et le contenu d’un dossier. Il peut également énumérer tout le contenu
du dossier avec
denied L’utilisateur ne peut pas ajouter, supprimer, modifier ou accorder des autorisations
sco-contents ou sco-expanded-contents.
sur les éléments du dossier, mais peut énumérer le contenu de ce dernier.
Recherche de cours et de curriculums
La plupart des actions d’API XML fonctionnant avec les cours et les curriculums requièrent le
sco-id du cours ou du curriculum. Il est souvent nécessaire de localiser le sco-id
dynamiquement, avant d’appeler une autre action, sans connaître le nom exact du SCO.
Pour rendre les recherches de SCO de formation efficaces, utilisez les méthodes suivantes :
■ Créez des dossiers spécialisés dans le dossier Formation partagée pour stocker les cours et
les curriculums. Pour ce faire, utilisez Connect Enterprise Manager ou l’API XML, dans
laquelle le dossier Formation partagée est appelé
■ Utilisez ces dossiers pour stocker les diverses catégories de cours et de curriculums (par
exemple, Formation Marketing ou Formation Ventes).
■ Utiliser une structure plate dans les dossiers spécialisés, en stockant les cours et les
curriculums un niveau au-dessous.
Cette structure de répertoires est également conseillée lorsque vous souhaitez afficher la liste
de tous les cours et curriculums (ou de tous ceux d’un domaine spécifique) et autoriser les
utilisateurs à s’auto-inscrire.
courses.
Recherche de cours et de curriculums71
Page 72
Si vous utilisez Enterprise Manager, vous pouvez trouver le sco-id d’un cours ou d’un
curriculum en naviguant jusqu’à lui, en cliquant sur son URL ou en récupérant la valeur de
sco-id dans l’URL du navigateur. Vous pouvez également localiser le sco-id depuis une
application, en utilisant l’API XML.
Recherche du sco-id d’un cours ou d’un curriculum
1. Appelez sco-shortcuts :
https://example.com/api/xml?action=sco-shortcuts
2.
Dans la réponse, recherchez le sco-id du dossier courses :
<name>All About Web Communities</name>
<url-path>/p33096345/</url-path>
<description>Web 2.0 course</description>
<date-created>2006-06-12T14:48:25.870-07:00</date-created>
<date-modified>2006-06-12T14:48:25.870-07:00</date-modified>
</sco>
Liste de tous les cours ou curriculums disponibles
1. Obtenez le sco-id d’un dossier de formation spécialisé que vous avez créé (voir la section
« Recherche du sco-id d’un cours ou d’un curriculum »).
Vous pouvez également obtenir le
Manager, en cliquant sur son URL ou en lisant le
2. Appelez sco-contents, en transmettant le sco-id du dossier :
<name>Programming in Perl</name>
<description>Info about Perl</description>
<url-path>/p57283193/</url-path>
<date-taken>2006-05-01T17:10:56.400-07:00</date-taken>
<from-curriculum>false</from-curriculum>
</row>
Un cours peut présenter de nombreuses valeurs autorisées pour status, mais un
curriculum ne peut présenter que l’état
autorisées sont décrites à la section
completed ou incomplete. Les valeurs d’état
Attribut d’état dans les références.
74Chapitre 5: Formations
Page 75
Inscription d’un utilisateur
Pour permettre aux utilisateurs d’accéder aux formations, Adobe recommande de les inscrire
dans des cours. Les utilisateurs obtiennent alors l’autorisation appropriée pour démarrer et
terminer le cours et vous pouvez également effectuer leur suivi et accéder aux diverses actions
de rapport.
Les cours diffèrent du contenu. Les cours peuvent être repris en cours de route et offrent un
mode de révision coté serveur (pour plus d’informations, consultez le Mode d’emploi d’Adobe Connect Enterprise).
Votre application peut permettre aux utilisateurs de s’inscrire eux-mêmes aux cours, ce qui
implique un appel à
également écrire un flux de travail, ou une séquence d’appels d’action, qui crée un nouvel
utilisateur et l’inscrit dans un cours.
Inscription d’un utilisateur dans un cours ou un curriculum
1. Obtenez le sco-id du cours (voir « Recherche du sco-id d’un cours ou d’un curriculum »).
2. Obtenez le principal-id de l’utilisateur (voir la section « Obtention du principal-id de
l’utilisateur actif »).
3. Pour inscrire l’utilisateur au cours, appelez permissions-update. Utilisez le sco-id du
<name>A Day in the Life</name>
<url>example.com/day/</url>
<date-created>2006-06-12T14:47:59.903-07:00</date-created>
<date-modified>2006-06-12T14:47:59.903-07:00</date-modified>
<date-begin>2006-06-12T14:45:00.000-07:00</date-begin>
<url-path>/day/</url-path>
<expired>false</expired>
<completed>false</completed>
76Chapitre 5: Formations
Page 77
Inscription d’un grand nombre
d’utilisateurs
Lorsque vous inscrivez un grand nombre d’utilisateurs à un cours, commencez par choisir
entre les inscrire directement ou créer un groupe et inscrire ce dernier. Pour inscrire des
utilisateurs dans des cours, nous vous conseillons d’appliquer les recommandations d’Adobe
suivantes :
■ Pour inscrire directement des utilisateurs à des cours, utilisez permissions-update, qui
vous permet d’inscrire 1 000, 10 000 ou encore plus d’utilisateurs par un seul appel d’API.
■ N’ajoutez les utilisateurs à un groupe avant d’inscrire celui-ci que si vous envisagez de
réutiliser le groupe (par exemple pour l’inscrire à plusieurs cours). Dans ce cas, vous ne
pouvez ajouter que 200 utilisateurs à la fois.
Inscription d’un grand nombre d’utilisateurs (plus de 1 000) directement dans
un cours
1. Obtenez le sco-id du cours (voir « Recherche du sco-id d’un cours ou d’un curriculum »).
2. Obtenez le principal-id de chaque utilisateur que vous souhaitez inscrire.
Pour ce faire, vous pouvez :
■Appeler principal-list avec des filtres pour dresser la liste des utilisateurs que vous
Si les informations de l’un des trios sont incorrectes, group-membership-update renvoie
l’état
ok, mais l’utilisateur du trio incorrect n’est pas ajouté au groupe.
Avec Enterprise Manager Choisissez Administration > Utilisateurs et Groupes >
Importer. Vous pouvez importer des utilisateurs à partir d’un fichier CSV (valeurs séparées
par des virgules) avec au moins un identifiant de connexion pour chaque utilisateur.
3. Obtenez le sco-id du cours (voir la section Recherche du sco-id d’un cours ou d’un
curriculum) en utilisant le
4. Appelez permissions-update pour inscrire le groupe au cours :
Au fur et à mesure que les gestionnaires de formation créent des curriculums et que les
utilisateurs suivent des cours, vous devez récupérer ces informations pour les afficher dans
votre application. Un seul appel suffit généralement pour obtenir les informations nécessaires,
une fois que vous connaissez le
l’utilisateur.
Par exemple, vous pouvez afficher tous les utilisateurs inscrits à un curriculum ou tous les
cours faisant partie d’un curriculum. Une autre tâche courante consiste à afficher tous les
cours d’un curriculum que l’utilisateur a déjà terminé, puis les cours restants.
Affichage de tous les utilisateurs inscrits à un cours ou un curriculum
1. Appelez permissions-info, en appliquant un filtre sur un permission-id view :
display-seq="0" source-sco-type="0">
<name>All About Web Communities</name>
<url-path>/l80422078/</url-path>
<description>test</description>
<date-created>2006-06-12T14:48:25.980-07:00</date-created>
<date-modified>2006-06-12T14:48:25.980-07:00</date-modified>
</sco>
La réponse renvoie une liste plate d’éléments sco, mais si nécessaire, vous pouvez créer une
hiérarchie à l’aide de ces trois valeurs. Le SCO qui présente
type=curriculum correspond
au curriculum qui contient les cours. Ici, un curriculum fonctionne comme un dossier.
Affichage du travail terminé et restant dans un curriculum pour un utilisateur
1. Obtenez le sco-id du curriculum (voir la section « Recherche du sco-id d’un cours ou d’un
curriculum »).
2. Obtenez le principal-id de l’utilisateur (« Recherche d’un principal-id »).
3. Appelez report-curriculum-taker, en lui transmettant le principal-id sous forme de
■Un état user-passed ou completed désigne un module que l’utilisateur a terminé.
■Un état not-attempted ou incomplete indique que l’utilisateur n’a pas terminé le
module.
■L’état du curriculum lui-même ne peut être que completed ou incomplete.
Affichage des informations sur un curriculum81
Page 82
Rapport sur les notes
La plupart des cours offrent un certain nombre de tentatives aux stagiaires. Si vous utilisez le
mode révision coté serveur, un gestionnaire de formation peut spécifier le nombre maximal de
tentatives accordé au stagiaire pour qu’il termine ou réussisse le cours (pour plus
d’informations sur le fonctionnement des nouvelles tentatives de cours en mode révision côté
client et coté serveur, consultez le Mode d’emploi de Connect Enterprise).
Cela signifie qu’un stagiaire peut suivre un cours plusieurs fois et obtenir plusieurs notes.
Dans votre application, vous pouvez au besoin n’afficher que la note la plus élevée.
Rapport de la note la plus élevée obtenue dans un cours ou un questionnaire
par un utilisateur
1. Obtenez le principal-id de l’utilisateur (voir la section « Obtention du principal-id de
l’utilisateur actif »).
2. Obtenez le sco-id du cours ou du questionnaire (voir « Recherche du sco-id d’un cours
ou d’un curriculum »).
3. Appelez report-user-training-transcripts, en appliquant un filtre sur le sco-id et
icon="producer">
<name>Java Data Type Quiz</name>
<url-path>/quiz/</url-path>
<login>bob@acme.com</login>
<date-taken>2006-05-12T11:55:24.940-07:00</date-taken>
<principal-name>Bob Smith</principal-name>
82Chapitre 5: Formations
Page 83
CHAPITRE 6
Référence des actions
Cette section fournit une référence pour chaque action de l’API XML des services Web
d’Adobe® Connect™ Enterprise. Vous pouvez appeler ces actions sur Adobe Connect
Enterprise Server 6 ou Adobe Connect Enterprise Hosted 6.
Tous les noms d’action, de paramètre, d’élément et d’attribut respectent la casse. En d’autres
termes,
exactement tels qu’ils apparaissent dans leur référence, à moins qu’une entrée spécifique
n’indique qu’un élément ne respecte pas la casse.
Actions nouvelles et supprimées
Cette version accueille quelques nouvelles actions, rétablit une action supprimée dans la
version précédente et en supprime d’autres.
De nouvelles actions de rapport vous permettent de générer des rapports depuis le serveur :
Certaines actions, qui étaient prises en charge par les versions précédentes (Breeze 4 ou
Breeze 5), ne sont plus disponibles. Elles sont énumérées dans le tableau suivant, avec une
action de remplacement, le cas échéant.
name est différent de Name et sco-id est différent de sco-ID. Vous devez les saisir
, supprimée dans Adobe Breeze® 5, a été restaurée dans les
Services Web 6 Dans la fonctionnalité de sco-upload.
acl-field-info
Disponibilité
Breeze 5, Connect Enterprise Web Services 6
Description
Renvoie des informations sur un mandant, un compte ou un SCO, telles que définies dans
une liste de contrôle d’accès (ACL).
Les informations renvoyées comprennent les champs et leurs valeurs. Chaque champ présente
un identifiant, ou nom qui le décrit.
Pour appeler
mandant, le compte ou l’objet. Vous devez également spécifier la valeur de
correspondant à l’objet auquel le mandant a accès. L’
account-id ou un principal-id. Vous pouvez appeler principal-list pour déterminer le
account-id ou le principal-id, ou sco-shortcuts ou sco-contents pour obtenir un
sco-id.
acl-field-info, vous devez disposer de l’autorisation d’affichage pour le
Actualise la valeur d’un champ appartenant à un mandant, un SCO ou un compte.
Le mandant, le SCO ou le compte appartient à au moins une liste de contrôle d’accès (ACL),
laquelle contient toutes les entités autorisées à accéder au mandant, au SCO ou au compte.
Appelez
compte. La réponse contient l’élément
acl-field-update :
<?xml version="1.0" encoding="utf-8" ?>
<results>
</results>
Pour appeler acl-field-update, vous devez disposer de l’autorisation modify pour le
mandant, le SCO ou le compte.
URL de requête
http://server_name/api/xml
acl-field-info pour identifier les champs dont dispose le mandant, le SCO ou le
Valeur autorisée Code indiquant l’état de la réponse
Etat de la réponse.
(voir la section
status).
Page 95
ElémentAttributTypeDescription
common
locale
time-zone-id
cookie
date
host
local-host
url
version
account
account-id
ConteneurInformations courantes sur votre
connexion au serveur.
Valeur autorisée Paramètre qui définit comment
Adobe Connect Enterprise
Manager ou votre application
affiche des informations sur un
utilisateur (voir la section
les valeurs).
Valeur autorisée Code définissant le fuseau horaire
de l’utilisateur (voir la section
pour les valeurs valides).
zone-id
ChaîneValeur du cookie BREEZESESSION
(chaîne renvoyée par le serveur et
identifiant cet utilisateur pour cette
session).
Date et heureDate et heure de l’appel à common-
, au format ISO 8601.
info
ChaîneURL du nom d’hôte pleinement
qualifié du serveur. Dans un cluster,
nom qui identifie le cluster.
ChaîneNom de l’ordinateur qui a exécuté
l’action (sur un seul serveur, le
même nom d’ordinateur que
dans le cas d’un cluster, le nom du
serveur qui a exécuté l’action).
ChaînePartie de l’URL passant cet appel
qui identifie le nom de l’action.
ChaîneNuméro et nom de la version du
serveur.
Vide, avec
attribut
Informations sur le compte auquel
l’utilisateur appartient. Renvoyé si
vous êtes connecté(e) à Connect
Enterprise ou si vous effectuez
l’appel sur un compte hébergé.
EntierIdentifiant du compte auquel
l’utilisateur appartient.
lang pour
time-
host ;
common-info95
Page 96
ElémentAttributTypeDescription
user
user-id
type
name
login
user-agent
ConteneurInformations sur l’utilisateur qui a
établi une session avec le serveur.
Renvoyé uniquement si l’utilisateur
qui effectue l’appel est connecté.
EntierIdentifiant de l’utilisateur qui a établi
une session avec le serveur.
Valeur autorisée Type du mandant en session
(généralement un utilisateur ; voir
les valeurs autorisées pour les
mandants à la section
ChaîneNom complet de l’utilisateur qui a
établi une session avec le serveur.
ChaîneNom d’utilisateur de l’utilisateur
connecté au serveur, généralement
son adresse électronique.
ChaîneIdentifiant du client ou du
navigateur Web qui a établi une
session avec le serveur.
<login>joy@acme.com</login>
</user>
<user-agent>Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1;
.NET CLR 1.1.4322)</user-agent>
</common>
</results>
Type).
96Chapitre 6: Référence des actions
Page 97
custom-fields
Disponibilité
Breeze 4 et Breeze 5 ; Connect Enterprise Web Services 6
Description
Dresse la liste de tous les champs personnalisés définis dans un compte et des détails relatifs
aux champs.
Les champs personnalisés fournissent des informations sur les objets (SCO) ou sur les
mandants qui ne sont pas déjà définis dans Adobe Connect Enterprise Manager. Vous pouvez
créer des champs personnalisés ou actualiser leur valeur à l’aide de