ADOBE Connect Enterprise Installation Manual [fr]

Page 1
ADOBE®CONNECT™ENTERPRISE
UTILISATION DES SERVICES WEB D’ADOBE CONNECT ENTERPRISE
Page 2
© 2006 Adobe Systems Incorporated. Tous droits réservés.
Utilisation des services Web d’Adobe® Connect™ Enterprise
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.
La fonctionnalité RealDuplex™ AEC (Acoustic Echo Cancellation) fait l’objet d’un copyright © 1995-2004 SPIRIT.
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.
Page 3

Table des matières

Avant de commencer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
Conseils et formation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
Environnement de développement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
Nouveautés de ce manuel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .9
Ressources supplémentaires. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .9
Conventions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .11
Chapitre 1 : Architecture. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Circulation des données . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
Conception de votre premier appel d’API. . . . . . . . . . . . . . . . . . . . . . . . . 18
Chapitre 2 : Connexion et requêtes . . . . . . . . . . . . . . . . . . . . . . . 23
Connexion depuis une application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
Envoi d’une requête dans un document XML . . . . . . . . . . . . . . . . . . . . . 31
Analyse d’une réponse avec XPath . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Analyse d’une réponse d’erreur. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
Déconnexion d’un utilisateur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
Chapitre 3 : Notions de base . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
Recherche d’un principal-id. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
Liste des mandants ou des invités . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .37
Création d’utilisateurs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
Mise à jour des utilisateurs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
Création de champs personnalisés. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
Création de groupes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
Recherche de SCO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
Téléchargement de fichiers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .47
Vérification des autorisations. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
Chapitre 4 : Réunions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
Recherche de réunions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
Affichage des réunions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
Création des URL de salles de réunion . . . . . . . . . . . . . . . . . . . . . . . . . . 54
3
Page 4
Création de réunions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
Création de réunions personnalisées . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
Invitation d’utilisateurs aux réunions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
Suppression d’utilisateurs de la réunion . . . . . . . . . . . . . . . . . . . . . . . . . . 61
Calcul du taux d’utilisation d’une réunion . . . . . . . . . . . . . . . . . . . . . . . . . 61
Obtention des archives de réunion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
Obtention des résultats du sondage d’une réunion . . . . . . . . . . . . . . . . 64
Démarrage des réunions avec authentification externe . . . . . . . . . . . . 66
Chapitre 5 : Formations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .69
Autorisations de la bibliothèque des formations. . . . . . . . . . . . . . . . . . . 70
Recherche de cours et de curriculums . . . . . . . . . . . . . . . . . . . . . . . . . . . .71
Affichage de la formation d’un utilisateur . . . . . . . . . . . . . . . . . . . . . . . . . 73
Inscription d’un utilisateur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
Inscription d’un grand nombre d’utilisateurs . . . . . . . . . . . . . . . . . . . . . . 77
Affichage des informations sur un curriculum . . . . . . . . . . . . . . . . . . . . .80
Rapport sur les notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
Chapitre 6 : Référence des actions . . . . . . . . . . . . . . . . . . . . . . . . 83
Actions nouvelles et supprimées . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
acl-field-info . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
acl-field-list . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
acl-field-update . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .90
acl-preference-update . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
common-info . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
custom-fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
custom-fields-delete. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
custom-field-update . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .101
group-membership-update. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
learning-path-info . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
learning-path-update . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .110
login . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
logout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .114
permissions-info . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .115
permissions-reset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .119
permissions-update . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120
principal-info. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
principal-list . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
principal-list-by-field. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
principals-delete . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133
principal-update. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134
4 Table des matières
Page 5
report-active-meetings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .138
report-bulk-consolidated-transactions . . . . . . . . . . . . . . . . . . . . . . . . . .140
report-bulk-objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .144
report-bulk-questions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .146
report-bulk-slide-views. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .149
report-bulk-users . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151
report-course-status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .154
report-curriculum-taker. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .157
report-meeting-attendance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161
report-meeting-concurrent-users. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .164
report-meeting-sessions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .166
report-meeting-summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .169
report-my-courses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171
report-my-events . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .174
report-my-meetings. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177
report-my-training . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .180
report-quiz-interactions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .183
report-quiz-question-answer-distribution. . . . . . . . . . . . . . . . . . . . . . . .187
report-quiz-question-distribution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191
report-quiz-question-response . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .193
report-quiz-summary. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .196
report-quiz-takers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .198
report-quotas. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202
report-sco-slides . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205
report-sco-views . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207
report-user-trainings-taken . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209
report-user-training-transcripts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .213
sco-contents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .216
sco-delete . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 220
sco-expanded-contents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .221
sco-info. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225
sco-move . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 229
sco-nav . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .231
sco-search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233
sco-shortcuts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 237
sco-update. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 240
sco-upload . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 244
user-accounts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247
user-transcript-update . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 250
user-update-pwd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .251
Table des matières 5
Page 6
Chapitre 7 : Référence des filtres et des tris . . . . . . . . . . . . . . . 255
filter-definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .255
sort-definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .257
Chapitre 8 : Références courantes . . . . . . . . . . . . . . . . . . . . . . . 259
access . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 259
field . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 260
icon . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261
lang . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .262
object-type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .262
path-type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .263
permission-id . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .264
status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .265
Attribut d’état . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .268
time-zone-id . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .269
Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271
Annexe A : Exemple d’application . . . . . . . . . . . . . . . . . . . . . . . 275
Conception d’une classe d’adaptateur . . . . . . . . . . . . . . . . . . . . . . . . . .276
Connexion de l’utilisateur. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .277
Envoi de requêtes XML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .279
Analyse des réponses XML. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 280
Affichage des informations de l’utilisateur . . . . . . . . . . . . . . . . . . . . . . .282
Liste des réunions d’un utilisateur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .283
Création et mise à jour des réunions . . . . . . . . . . . . . . . . . . . . . . . . . . . .285
Affichage des détails de la réunion . . . . . . . . . . . . . . . . . . . . . . . . . . . . .287
Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 291
6 Table des matières
Page 7
Avant de commencer
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émentaires 9
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.
10 Avant 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 :
http://server_name/api/xml
?action=custom-fields &filter-definition=value &session=BreezeSessionCookieValue
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 :
https://example.com/api/xml?action=custom-fields&filter-name=location
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.
Conventions 11
Page 12
12 Avant 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
3a 4a
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.
14 Chapitre 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.
1 Le 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).
2 Le 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.
4 Le 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.
A Le 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).
B Le 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.
C Flash Player requiert une connexion cryptée au serveur Flash Media via
RTMPS:443.
D Le 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ées 15
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.
16 Chapitre 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ées 17
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 :
https://example.com/api/xml?action=sco-info&sco-id=2006334909
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 :
<?xml version="1.0" encoding="utf-8" ?> <results>
<status code="ok" /> <common locale="en" time-zone-id="85">
<cookie>breezbryf9ur23mbokzs8</cookie>
18 Chapitre 1: Architecture
Page 19
<date>2006-08-29T19:02:45.843+00:00</date> <host>https://example.com</host> <local-host>abc123def789</local-host> <url>/api/xml?action=common-info</url> <version>breeze_530_r212</version> <user-agent>
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
CLR 1.1.4322) Host: example.com Connection: Keep-Alive Cookie: BREEZESESSION=breezbryf9ur23mbokzs8
3.
Vérifiez la réponse, qui présente la liste de tous les mandants sur le serveur, chacun dans son propre élément
<?xml version="1.0" encoding="utf-8" ?> <results>
<status code="ok" />
<principal-list>
<principal principal-id="624526" account-id="624520" type="user"
has-children="false" is-primary="false" is-hidden="false"> <name>joe harrison</name> <login>jharrison@example.com</login> <email>jharrison@example.com</email>
</principal>
principal.
Conception de votre premier appel d’API 19
Page 20
<principal principal-id="624550" account-id="624520" type="user"
has-children="false" is-primary="false" is-hidden="false"> <name>bob jones</name> <login>bjones@example.com</login> <email>bjones@example.com</email>
</principal> ...
</principal-list>
</results>

Ajout de filtres et de tris

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),
20 Chapitre 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
par ordre alphabétique :
https://example.com/api/xml?action=principal-list&filter-type=group
&sort-name=asc
2.
Pour affiner la réponse, choisissez un groupe dans la liste et filtrez par son nom :
https://example.com/api/xml?action=principal-list&filter-name=developers
Cette fois, un seul groupe est renvoyé :
<?xml version="1.0" encoding="utf-8" ?> <results>
<status code="ok" /> <principal-list>
<principal principal-id="2007105030" account-id="624520"
</principal>
</principal-list>
</results>
type="group" has-children="true" is-primary="false"
is-hidden="false"> <name>developers</name> <login>developers</login>

Pour en savoir plus

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’API 21
Page 22
22 Chapitre 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
l’utilisateur, mais pas le paramètre
http://example.com/api/xml?action=login&login=bobs@acme.com
&password=football
2.
Dans la réponse, recherchez le code d’état ok.
Si la connexion réussit, le serveur renvoie le cookie
session :
BREEZESESSION dans l’en-tête de la
réponse :
Set-Cookie:
BREEZESESSION=breezbryf9ur23mbokzs8;domain=.macromedia.com;path=/
24 Chapitre 2: Connexion et requêtes
Page 25
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 :
http://example.com/api/xml?action=login&login=bobs@acme.com
&password=football&session=breezxq66rt43poai3if8
4.
Dans la réponse, recherchez le code d’état ok.
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 application 25
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
http://acme.adobe.com/api/xml?action=common-info http://adobe.com/api/xml?action=common-info&domain=acme.adobe.com
2.
Dans la réponse, localisez les valeurs de cookie et account-id :
<cookie>Sbreezzd2dfr2ua5gscogv</cookie> ... <account account-id="295153" />
3.
Collectez l’identifiant de connexion et le mot de passe de l’utilisateur dans votre
domain :
application.
4. Appelez l’action login, en ajoutant les informations d’authentification de l’utilisateur et les
paramètres
https://example.com/api/xml?action=login&login=joy@acme.com
&password=happy&account-id=295153&session=Sbreezzd2dfr2ua5gscogv
5.
Dans la réponse, recherchez le code d’état ok.
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
http://acme.adobe.com/api/xml?action=common-info http://adobe.com/api/xml?action=common-info&domain=acme.adobe.com
2.
Dans la réponse, recherchez les valeurs cookie et host :
<cookie>breezxq66rt43poai3if8</cookie> ... <host>https://acme.adobe.com</host>
3.
Récupérez le nom de domaine dans la valeur de host :
acme.adobe.com
4. Dans votre application, collectez l’identifiant de connexion et le mot de passe de
domain :
l’utilisateur.
Assurez-vous qu’il s’agisse bien de l’identifiant de connexion de l’utilisateur pour Enterprise Hosted et non d’un identifiant externe.
26 Chapitre 2: Connexion et requêtes
Page 27
5. Appelez login, en ajoutant les informations d’authentification de l’utilisateur et les
paramètres
https://example.com/api/xml?action=login&login=joe
&password=smith99&domain=acme.adobe.com&session=breezxq66rt43poai3if8
domain et session :
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 application 27
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
Externes Externes 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.
28 Chapitre 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
éléments
<filter-mapping>
</filter-mapping> <!-­<filter-mapping> <filter-name>NtlmAuthenticationFilter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping>
-->
3.
Dans l’élément filter de HeaderAuthenticationFilter, activez le modèle /api/ pour
filter-mapping :
<filter-name>HeaderAuthenticationFilter</filter-name> <url-pattern>/*</url-pattern>
filter-mapping du filtre
les URL de requête. Pour ce faire, vous avez deux possibilités.
Si votre application utilise l’API XML et des applications Connect Enterprise Dans
l’élément pour désactiver l’élément
<!-­<init-param>
</init-param>
-->
Si votre application n’utilise que l’API XML
votre type de filtre de sorte qu’il utilise le modèle URL
<filter-mapping> <filter-name>HeaderAuthenticationFilter</filter-name> <url-pattern>/api/*</url-pattern> </filter-mapping>
filter de HeaderAuthenticationFilter, utilisez des balises de commentaires
init-param dont la valeur de param-value est /api/ :
<param-name>ignore-pattern-0</param-name> <param-value>/api/</param-value>
Modifiez l’élément filter-mapping de
/api/* au lieu de /* :
Connexion depuis une application 29
Page 30
Ensuite, dans l’élément filter de votre type de filtre, ajoutez des balises de commentaire autour de tous les éléments
<filter>
<filter-name>HeaderAuthenticationFilter</filter-name>
<filter-class>
<!--
-->
</filter>
4.
Configurez Enterprise Server de sorte que les utilisateurs soient créés avec le champ
ext-login défini sur l’identifiant utilisateur externe que vous envoyez (pour plus
com.macromedia.airspeed.servlet.filter.HeaderAuthenticationFilter
</filter-class>
<init-param>
<param-name>ignore-pattern-0</param-name>
<param-value>/api/</param-value> </init-param> ... <init-param>
<param-name>ignore-pattern-4</param-name>
<param-value>/servlet/testbuilder</param-value> </init-param>
init-param présentant un param-name ignore-pattern-x :
d’informations, voir le Guide d’installation et de configuration de Connect Enterprise).
Par défaut,
ext-login a la même valeur que login, l’identifiant de connexion Enterprise
Server.
5. Une fois que le système authentifie l’utilisateur, créez une requête login. Ajoutez le
paramètre
https://example.com/api/xml?action=login&external-auth=use
6.
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.
30 Chapitre 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
le nom d’action et chaque paramètre :
<params>
<param name="action">login</param> <param name="login">jon@doe.com</param> <param name="password">foobar</param>
</params>
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-type text/xml ou application/xml.
POST.
Envoi d’une requête dans un document XML 31
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")))
return "";
XPath xpath = XPath.newInstance("//url-path/text()"); String path = ((Text) xpath.selectSingleNode(e)).getText();
e = request("sco-shortcuts", null);
xpath = XPath.newInstance("//domain-name/text()"); String url = ((Text) xpath.selectSingleNode(e)).getText();
return url + "/" + path.substring(1) + "?session=" +
breezesession;
} catch (JDOMException jde) {
throw new XMLApiException(PARSE_ERROR, jde);
}
}
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”.
32 Chapitre 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
<status code="invalid">
<invalid field="has-children" type="long" subcode="missing" />
</status>
<status code="no-access" subcode="denied" />
Gestion des codes d’état
1. Rédigez une méthode recherchant le code et le subcode d’état dans une réponse d’API
XML. En voici un exemple en Java :
private String getStatus(Element el) throws JDOMException {
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’erreur 33
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 :
Set-Cookie: BREEZESESSION=;domain=.macromedia.com;expires=Mon, 29-Aug-2005
22:26:15 GMT;path=/
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
34 Chapitre 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 :
<principal principal-id="2006282569" account-id="624520" type="user"
has-children="false" is-primary="false" is-hidden="false">
<name>jazz doe</name> <login>jazzdoe@example.com</login> <email>jazzdoe@newcompany.com</email> </principal>
Obtention du principal-id de l’utilisateur actif
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.
36 Chapitre 3: Notions de base
Page 37

Liste des mandants ou des invités

Un mandant présentant un type user 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 :
<principal principal-id="2006282569" account-id="624520" type="user"
has-children="false" is-primary="false" is-hidden="false">
<name>jazz doe</name> <login>jazzdoe@example.com</login> <email>jazzdoe@newcompany.com</email> </principal>
Liste de tous les invités présents sur le serveur
1. Appelez report-bulk-users, en utilisant un filtre de type guest :
https://example.com/api/xml?action=report-bulk-users
&filter-like-type=guest
Utilisez filter-like-type=guest plutôt que filter-type=guest.
2. Recherchez les éléments row de la réponse :
<row principal-id="51157227"> <login>joy@acme.com</login> <name>joy@acme.com</name> <email>joy@acme.com</email> <type>guest</type> </row>
type guest est entré dans une salle de réunion en tant
principal-id à
Liste des mandants ou des invités 37
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 :
https://example.com/api/xml?action=principal-update
&first-name=jazz&last-name=doe&login=jazz99@doe.com&password=hello
&type=user&send-email=true&has-children=0&email=jazz99@doe.com
Le type doit être user, has-children doit être 0 ou false, send-email doit être true et
email doit avoir une adresse électronique valide.
Le serveur envoie un message de bienvenue contenant les informations de connexion à l’adresse électronique de l’utilisateur.
3. Dans l’élément principal de la réponse, recherchez le principal-id de l’utilisateur :
<principal type="user" principal-id="2007184341" has-children="0"
account-id="624520">
<login>jammdoe@example.com</login> <ext-login>jammdoe@example.com</ext-login> <name>jamm doe</name> </principal>
admins pour l’application à utiliser
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
paramètres
https://example.com/api/xml?action=principal-update&first-name=jazz
&last-name=doe&login=jazz&email=jazzdoe@company.com &password=nothing&type=user&has-children=0
38 Chapitre 3: Notions de base
login et email :
Page 39
4. Dans la réponse, recherchez le principal-id du nouvel utilisateur :
<principal type="user" principal-id="2007184341" has-children="0"
account-id="624520"> <login>jazzdoe@example.com</login> <ext-login>jazzdoe@example.com</ext-login> <name>jazz doe</name> </principal>
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 :
https://example.com/api/xml?action=principal-update
&principal-id=2006282569&email=jazzdoe@newcompany.com
4.
Dans la réponse, recherchez le code d’état ok.
Mise à jour des utilisateurs 39
Page 40

Création de champs personnalisés

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-
5.
custom-field-update.
custom-field-update.
https://example.com/api/xml?action=custom-field-update
&object-type=object-type-principal&permission-id=manage &account-id=624520&name=Location&comments=adobe%20location &field-type=text&is-required=true&is-primary=false&display-seq=9
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.
<field field-id="2007184366" object-type="object-type-principal"
display-seq="9" account-id="624520" is-primary="false"
permission-id="manage" is-required="true" field-type="text"> <comments>test</comments> <name>Country</name> </field>
Obtenez le principal-id de l’utilisateur (voir la section « Recherche d’un principal-id »).
, le principal-id de l’utilisateur en tant qu’acl-id et une valeur :
id
https://example.com/api/xml?action=acl-field-update
&acl-id=2006258745&field-id=2007017474&value=San%20Francisco
Dans la réponse, recherchez le code d’état ok.
40 Chapitre 3: Notions de base
Page 41

Création de groupes

Pour ajouter des utilisateurs à des groupes, vous devez appeler principal-update en tant qu’utilisateur Administrateur de votre application.
Ajout d’un utilisateur à un groupe
1. Connectez-vous en tant qu’utilisateur Administrateur de votre application.
2. (Facultatif) Si l’utilisateur n’existe pas encore, créez-le avec principal-update :
https://example.com/api/xml?action=principal-update
&first-name=jazzwayjazz&last-name=doe&login=jazz@doe.com &password=nothing&type=user&has-children=0
3.
(Facultatif) Dans la réponse, recherchez le principal-id du nouvel utilisateur.
4. Si l’utilisateur existe déjà, appelez principal-list pour obtenir son principal-id :
https://example.com/api/xml?action=principal-list&filter-type=user
5.
Dans la réponse, recherchez le principal-id :
<principal principal-id="5611980" account-id="624520" type="user"
has-children="false" is-primary="false" is-hidden="false"> <name>Joy Black</name> <login>joy@acme.com</login> <email>joy@acme.com</email> </principal>
6.
Appelez de nouveau principal-list pour obtenir le principal-id du groupe :
https://example.com/api/xml?action=principal-list&filter-type=group
7.
Appelez group-membership-update avec is-member=true pour ajouter l’utilisateur au groupe :
https://example.com/api/xml?action=group-membership-update
&group-id=4930296&principal-id=2006258745&is-member=true
Le principal-id est le principal-id de l’utilisateur.
Le group-id est le principal-id du groupe.
Le paramètre is-member doit être true.
Création de groupes 41
Page 42
Vérification de l’appartenance d’un utilisateur à un groupe
1. Appelez principal-list avec un group-id, un filter-is-member et un filtre
identifiant le mandant :
https://example.com/api/xml?action=principal-list&group-id=624523
&filter-is-member=true&filter-like-name=bob
2.
Dans la réponse, recherchez un élément principal. Une réponse correcte ressemble à cela :
<principal-list>
<principal principal-id="624660" account-id="624520" type="user"
has-children="false" is-primary="false" is-hidden="false"> <name>Bill Jones</name> <login>bjones@acme.com</login> <email>bjones@acme.com</email> <is-member>true</is-member>
</principal>
</principal-list>
Si l’utilisateur n’est pas membre du groupe, l’élément principal-list est vide :
<?xml version="1.0" encoding="utf-8" ?> <results>
<status code="ok" /> <principal-list />
</results>
Recherche des membres d’un groupe
1. Pour obtenir le principal-id du groupe, appelez principal-list avec des filtres :
https://example.com/api/xml?action=principal-list&filter-type=group
&filter-name=developers
Avec filter-type et filter-name, principal-list doit renvoyer une seule correspondance.
2. Dans la réponse, recherchez le principal-id :
<principal principal-id="2007105030" account-id="624520"
type="group" has-children="true" is-primary="false" is-hidden="false">
<name>developers</name> <login>developers</login> <is-member>false</is-member> </principal>
3.
Appelez de nouveau principal-list, avec le principal-id en tant que group-id et
filter-is-member=true :
https://example.com/api/xml?action=principal-list&group-id=2007105030
&filter-is-member=true
42 Chapitre 3: Notions de base
Page 43
4. Dans la réponse, recherchez les éléments principal :
<principal principal-id="5698354" account-id="624520" type="group"
has-children="true" is-primary="false" is-hidden="false">
<name>Bob Jones</name> <login>bobjones@acme.com</login> <is-member>true</is-member> </principal>
Liste de tous les groupes auxquels un utilisateur appartient
1. Appelez principal-list avec le principal-id de l’utilisateur et filter-is-
member=true
https://example.com/api/xml?action=principal-list
&principal-id=2006258745&filter-is-member=true
2.
Dans la réponse, recherchez les éléments principal :
<principal principal-id="5698354" account-id="624520" type="group"
<name>Bob Jones</name> <login>bobjones@acme.com</login> <is-member>true</is-member> </principal>
:
has-children="true" is-primary="false" is-hidden="false">

Recherche de SCO

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
sco-id et de type dans la réponse de sco-info ou
content, course, meeting, etc.
d’autres actions :
<sco account-id="624520" disabled="" display-seq="0" folder-id="2006258747"
icon="producer" lang="en" max-retries="" sco-id="2006334909" source-sco-id="" type="content" version="1">
sco-id. Le sco-id est unique
sco-id est unique parmi tous
Recherche de SCO 43
Page 44

Caractéristiques des SCO

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 :
<?xml version="1.0" encoding="utf-8" ?> <results>
<status code="ok" /> <shortcuts>
<domain-name>http://example.com</domain-name> </sco>
<domain-name>http://example.com</domain-name> </sco>
<domain-name>http://example.com</domain-name> </sco>
<domain-name>http://example.com</domain-name>
http://example.com) et un chemin d’URL (tel que /f2006123456/). Vous
sco-shortcuts, elle renvoie une liste de dossiers. Notez que les
<sco tree-id="624530" sco-id="2006258751" type="my-meeting-templates">
<sco tree-id="624530" sco-id="2006258750" type="my-meetings">
<sco tree-id="624529" sco-id="624529" type="meetings">
<sco tree-id="624530" sco-id="624530" type="user-meetings">
44 Chapitre 3: Notions de base
Page 45
</sco>
...
</shortcuts>
</results>
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éminaires Il 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 :
<sco tree-id="4930295" sco-id="2006258748" type="my-courses"> <domain-name>http://example.com</domain-name> </sco>
my-courses dans le cas d’un cours créé par l’utilisateur.
Recherche de SCO 45
Page 46
4. Créez un appel à sco-expanded-contents pour énumérer le contenu du dossier, en
ajoutant si possible un filtre de correspondance exacte :
https://example.com/api/xml?action=sco-expanded-contents
&sco-id=2006258748&filter-name=All About Web Communities
Vous avez le choix entre plusieurs filtres :
Un filtre de correspondance exacte sur name ou url-path (comme filter-name ou
filter-url-path), si vous connaissez le nom ou l’URL du SCO.
Un filtre de date ultérieure ou antérieure (filter-gt-date ou filter-lt-date) sur
date-begin, date-created ou date-modified, si vous connaissez l’une de ces dates.
Un filtre de nom partiel (tel que filter-like-name), si vous ignorez le nom exact du
SCO. Toutefois, l’emploi de ce filtre risque d’affecter les performances du système.
5. Dans la réponse, recherchez le sco-id :
<sco depth="1" sco-id="2006745671" folder-id="2006258748" type="folder"
icon="folder" lang="en" source-sco-id="2006745669" display-seq="0" source-sco-type="14">
<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>
Obtention d’information sur un SCO
1. Appelez sco-info avec le sco-id :
https://example.com/api/xml?action=sco-info&sco-id=2006745669
2.
Dans la réponse, recherchez name, url-path ou toute autre valeur :
<sco account-id="624520" disabled="" display-seq="0"
folder-id="2006258748" icon="curriculum" lang="en" max-retries="" sco-id="2006745669" source-sco-id="" type="curriculum" version="0">
<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>
46 Chapitre 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 :
<sco tree-id="624530" sco-id="2006258750" type="my-meetings"> <domain-name>http://example.com</domain-name> </sco>
3.
Appelez sco-info avec le sco-id :
https://example.com/api/xml?action=sco-info&sco-id=2006334909
4.
Dans la réponse, recherchez l’élément url-path :
<sco account-id="624520" disabled="" display-seq="0"
folder-id="2006258747" icon="producer" lang="en" max-retries="" sco-id="2006334909" source-sco-id="" type="content" version="1">
<date-created>2006-05-11T12:00:02.000-07:00</date-created> <date-modified>2006-05-16T15:22:25.703-07:00</date-modified> <name>Test Quiz</name> <url-path>/quiz/</url-path> <passing-score>10</passing-score> <duration>15100.0</duration> <section-count>6</section-count> </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 :
http://server-domain/url-path/output/url-path.zip?download=zip
Vous connaissez probablement déjà le nom de domaine de votre serveur (tel que
exemple.com). Dans le cas contraire, vous pouvez l’obtenir en appelant sco-shortcuts.
Téléchargement de fichiers 47
Page 48
Téléchargement d’un fichier compressé depuis le serveur
1. Appelez sco-shortcuts :
https://example.com/api/xml?action=sco-shortcuts
2.
Récupérez une valeur domain-name dans la réponse :
http://example.com
Appelez sco-info en ajoutant le sco-id du fichier compressé :
3.
https://example.com/api/xml?action=sco-info&sco-id=2006258747
Le SCO correspond au fichier compressé complet.
4. Dans la réponse, recherchez l’élément url-path :
<sco account-id="624520" disabled="" display-seq="0" folder-id="624522"
icon="folder" lang="en" max-retries="" sco-id="2006258747" source-sco-id="" type="folder" version="1">
<date-created>2006-04-18T10:21:47.020-07:00</date-created> <date-modified>2006-04-18T10:21:47.020-07:00</date-modified> <name>joy@acme.com</name> <url-path>/f124567890/</url-path> </sco>
5.
Construisez l’URL de téléchargement, par exemple :
https://example.com/quiz/output/quiz.zip?download=zip
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
48 Chapitre 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 :
https://example.com/api/xml?action=permissions-info&acl-id=2006334909
&principal-id=2006258745
Pour vérifier les autorisations pour un SCO, l’acl-id est un sco-id. L’acl-id peut également être un
2. Dans la réponse, recherchez un permission-id :
<?xml version="1.0" encoding="utf-8" ?> <results>
<status code="ok" /> <permission acl-id="2007035246" permission-id="view"
principal-id="2006258745" />
</results>
principal-id ou un account-id.
Lorsqu’un mandant ne dispose d’aucune autorisation explicite pour le SCO (en d’autres termes, si
Vérification des autorisations de tous les mandants pour un SCO
1. Appelez permissions-info avec un acl-id, mais sans principal-id :
https://example.com/api/xml?action=permissions-info&acl-id=2006293572
2.
Parcourez par itération tous les éléments principal et recherchez-y les valeurs
permission-id :
<principal principal-id="2596608" is-primary="false" type="user"
</principal>
permission-id=""), ses autorisations sur l’objet parent du SCO s’appliquent.
has-children="false" permission-id="view"> <name>Jay Arnold</name> <login>jay@example.com</login>
Les valeurs d’autorisations valides sont énumérées dans permission-id.
Vérification des autorisations 49
Page 50
50 Chapitre 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 :
<sco tree-id="624530" sco-id="624530" type="user-meetings"> <domain-name>http://example.com</domain-name> </sco>
Le nom du dossier doit être meetings, user-meetings ou my-meetings. Utilisez un dossier aussi éloigné que possible dans l’arborescence.
3. Appelez sco-contents sur le dossier, en ajoutant un filtre ou deux pour affiner la réponse :
https://example.com/api/xml?action=sco-contents&sco-id=2006258750
&filter-type=meeting&filter-name=Intro to Film
Plus les filtres sont spécifiques, plus le résultat est précis. Les filtres les plus judicieux
sont
filter-name, filter-url-path ou un filtre de date. Faites attention lorsque
vous utilisez
Vous pouvez également appeler sco-expanded-contents pour dresser la liste des
sous-dossiers et de leur contenu. Toutefois, performances du serveur, si vous connaissez le
filter-like-name car il peut affecter les performances du système.
sco-contents est préférable pour les
sco-id du dossier contenant la
réunion.
4. Dans la réponse, recherchez le sco-id de la réunion :
<sco sco-id="2006743452" source-sco-id="-1625529" folder-id="2006258750"
type="meeting" icon="meeting" display-seq="0" is-folder="0">
<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
52 Chapitre 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 :
https://example.com/api/xml?action=report-my-meetings
Vous pouvez ajouter un filtre pour affiner la réponse. Par exemple, vous pouvez exclure les réunions terminées :
https://example.com/api/xml?action=report-my-meetings
&filter-expired=false
3.
Dans la réponse, recherchez les valeurs des éléments meeting :
<meeting sco-id="2007063179" type="meeting" icon="meeting" permission-
id="host" active-participants="0"> <name>September All Hands Meeting</name> <domain-name>example.com</domain-name> <url-path>/sept15/</url-path> <date-begin>2006-09-15T09:00:00.000-07:00</date-begin> <date-end>2006-09-15T18:00:00.000-07:00</date-end> <expired>false</expired> <duration>09:00:00.000</duration> </meeting>
4.
Créez l’URL conduisant à la salle de réunion en concaténant http:// ou https://, url-
et domain-name.
path
my-meetings.
Ajout d’un utilisateur à une réunion, puis affichage des réunions
1. Connectez-vous en tant qu’utilisateur Administrateur de votre application.
2. Obtenez le principal-id de l’utilisateur (voir « Recherche d’un principal-id »).
3. Obtenez le sco-id de la réunion (voir « Recherche du sco-id d’une réunion »).
4. Appelez permissions-update pour ajouter l’utilisateur à la réunion :
https://example.com/api/xml?action=permissions-update
&acl-id=2006258765&principal-id=2006258745&permission-id=view
Utilisez un permission-id view pour un participant, mini-host pour un présentateur ou
host pour un hôte de réunion.
Affichage des réunions 53
Page 54
5. Déconnectez-vous en tant qu’utilisateur Administrateur, puis reconnectez-vous avec
l’identifiant de l’utilisateur que vous venez d’ajouter à la réunion.
6. Affichez les réunions en cours de l’utilisateur :
https://example.com/api/xml?action=report-my-meetings
&filter-expired=false

Création des URL de salles de réunion

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
le dossier
https://example.com/api/xml?action=report-my-meetings
2.
Dans la réponse, recherchez les valeurs de domain-name et url-path :
<meeting sco-id="2007063179" type="meeting" icon="meeting"
<name>September All Hands Meeting</name> <domain-name>example.com</domain-name>
<url-path>/sept15/</url-path>
<date-begin>2006-09-15T09:00:00.000-07:00</date-begin> <date-end>2006-09-15T18:00:00.000-07:00</date-end> <expired>false</expired> <duration>09:00:00.000</duration> </meeting>
3.
Concaténez les deux valeurs et ajoutez http:// ou https:// au début :
https://example.com/online/
my-meetings de l’utilisateur, appelez report-my-meetings :
permission-id="host" active-participants="0">
Si vous utilisez HTTPS et que vous n’ajoutez pas explicitement https://, l’URL pointe par défaut sur
http:// et il est possible que l’utilisateur ne puisse pas accéder à la salle de
réunion.
my-meetings de l’hôte.
54 Chapitre 4: Réunions
Page 55
Création de l’URL d’une salle de réunion pour laquelle l’utilisateur n’est pas hôte
1. Obtenez le sco-id de la réunion (voir « Recherche du sco-id d’une réunion »).
2. Appelez sco-info avec le sco-id :
https://example.com/api/xml?action=sco-info&sco-id=2006258750
3.
Dans la réponse, recherchez l’élément url-path :
<sco account-id="624520" disabled="" display-seq="0" folder-id="624530"
icon="folder" lang="en" max-retries="" sco-id="2006258750"
source-sco-id="" type="folder" version="1"> <date-created>2006-04-18T10:21:47.020-07:00</date-created> <date-modified>2006-04-18T10:21:47.020-07:00</date-modified> <name>joy@acme.com</name> <url-path>/f1234567890/</url-path> </sco>
4.
(Facultatif) si vous connaissez le nom de domaine de votre compte Enterprise Server ou Enterprise Hosted, créez l’URL en utilisant
url-path.
5. Si vous ignorez le nom de domaine, appelez common-info :
https://example.com/api/xml?action=common-info
6.
Dans la réponse, recherchez la valeur de l’élément host.
http:// ou https://, domain-name, puis

Création de réunions

Pour créer une réunion Acrobat Connect, l’utilisateur doit être Administrateur, donc membre du groupe Hôtes de réunions. Dans la réponse de
type=live-admins.
principal-list, ce groupe présente
Une réunion peut être publique ou privée et, pour créer l’une ou l’autre, vous devez définir une combinaison spécifique de
Publique, équivaut à Toute personne disposant de l’adresse URL de la réunion peut y assister
principal-id=public-access&permission-id=view-hidden
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éunions 55
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
Connect est bien membre du groupe
https://example.com/api/xml?action=principal-list&group-id=624523
&filter-is-member=true&filter-like-name=bob
2.
Appelez sco-shortcuts pour obtenir le sco-id du dossier my-meetings de l’utilisateur :
https://example.com/api/xml?action=sco-shortcuts
3.
Dans la réponse, recherchez l’élément sco avec type=my-meetings :
<sco tree-id="624530" sco-id="2006258750" type="my-meetings"> <domain-name>http://example.com</domain-name> </sco>
4.
Appelez sco-update pour créer la salle de réunion :
https://example.com/api/xml?action=sco-update
&type=meeting&name=October All Hands Meeting &folder-id=2006258750&date-begin=2006-10-01T09:00 &date-end=2006-10-01T17:00&url-path=october
live-admins :
Le folder-id est le sco-id du dossier my-meetings de l’utilisateur.
5. Dans la réponse, recherchez le sco-id de la nouvelle réunion :
<sco folder-id="2006258750" lang="en" account-id="624520"
type="meeting" icon="meeting" sco-id="2007184134" version="0">
<date-begin>2006-10-01T09:00</date-begin> <date-end>2006-10-01T17:00</date-end> <url-path>/october/</url-path> <name>October All Hands Meeting</name>
</sco>
Vous pouvez stocker l’url-path de la réunion, si vous envisagez de créer ultérieurement une URL conduisant à la réunion.
6. Appelez permissions-update pour rendre la réunion publique. Utilisez le sco-id de la
réunion en tant que
https://example.com/api/xml?action=permissions-update&acl-id=2007018414
&principal-id=public-access&permission-id=view-hidden
acl-id :
56 Chapitre 4: Réunions
Page 57
7. Appelez permissions-update pour ajouter un hôte, un présentateur et des participants :
https://example.com/api/xml?action=permissions-update
&principal-id=2006258745&acl-id=2007018414&permission-id=host
Utilisez un permission-id host pour l’hôte de la réunion.
Utilisez mini-host pour le présentateur.
Utilisez view pour les participants à la réunion.
Vous pouvez spécifier plusieurs trios principal-id, acl-id et permission-id dans
le même appel à
8. Créez l’URL de la salle de réunion (voir la section « Création des URL de salles de
permissions-update.
réunion »).
Création d’une réunion privée et ajout d’un hôte, d’un présentateur et de participants
1. Connectez-vous en tant qu’utilisateur Administrateur de votre application.
2. Suivez la procédure de création d’une réunion publique, mais définissez l’autorisation de la
réunion comme privée :
https://example.com/api/xml?action=permissions-update&acl-id=2007018414
&principal-id=public-access&permission-id=denied
3.
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ées 57
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 :
<sco tree-id="624529" sco-id="-625529" type="shared-meeting-templates"> <domain-name>http://example.com</domain-name> </sco> <sco tree-id="624530" sco-id="2006258751" type="my-meeting-templates"> <domain-name>http://example.com</domain-name> </sco>
4.
Appelez sco-contents, en lui transmettant le sco-id du dossier de modèles de réunion :
https://example.com/api/xml?action=sco-contents&sco-id=2006258751
5.
Dans la réponse, recherchez le sco-id du modèle de réunion désiré.
6. Créez la réunion à l’aide de sco-update. Transmettez-lui le sco-id du modèle de la
réunion sous la forme d’un
https://example.com/api/xml?action=sco-update&type=meeting
&name=August%20All%20Hands%20Meeting&folder-id=2006258750 &date-begin=2006-08-01T09:00&date-end=2006-08-01T17:00 &url-path=august&source-sco-id=2006349744
7.
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.
58 Chapitre 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 :
https://example.com/api/xml?action=sco-info&sco-id=2006334033
2.
Dans la réponse, recherchez le nom de la réunion, la date ou d’autres valeurs :
<sco account-id="624520" disabled="" display-seq="0"
folder-id="2006258750" icon="meeting" lang="en" max-retries=""
sco-id="2007063163" source-sco-id="-1625529" type="meeting"
version="0">
<date-begin>2006-08-15T09:00:00.000-07:00</date-begin> <date-created>2006-07-27T15:30:43.220-07:00</date-created> <date-end>2006-08-15T18:00:00.000-07:00</date-end> <date-modified>2006-07-27T15:30:43.220-07:00</date-modified> <name>August All Hands Meeting</name> <url-path>/august/</url-path> </sco>
3.
Construisez l’URL de la salle de réunion (voir la section « Création des URL de salles de
réunion »).
4. Appelez permissions-info pour obtenir les valeurs principal-id des présentateurs ou
des participants, en filtrant par
https://example.com/api/xml?action=permissions-info
&acl-id=2007018414&filter-permission-id=mini-host
Pour la liste des présentateurs, utilisez permission-id=mini-host.
Pour les participants, utilisez permission-id=view.
5. Dans la réponse, recherchez les valeurs principal-id désirées :
<principal principal-id="2006282569" is-primary="false" type="user"
has-children="false" permission-id="view"> <name>jazz doe</name> <login>jazzdoe@example.com</login> </principal>
6.
Appelez principal-info avec le principal-id :
https://example.com/api/xml?action=principal-info
&principal-id=2006282569
permission-id :
Invitation d’utilisateurs aux réunions 59
Page 60
7. Récupérez les valeurs name et email dans la réponse :
<principal account-id="624520" disabled="" has-children="false"
is-hidden="false" is-primary="false" principal-id="2006282569"
type="user"> <ext-login>jazzdoe@example.com</ext-login> <login>jazzdoe@example.com</login> <name>jazz doe</name>
<email>jazzdoe@newcompany.com</email>
<first-name>jazz</first-name> <last-name>doe</last-name> <x-2006293620>E3612</x-2006293620> <x-2007017651>San Francisco</x-2007017651> </principal>
8.
Appelez de nouveau permissions-info, en filtrant par le permission-id host :
https://example.com/api/xml?action=permissions-info&acl-id=2007018414
&filter-permission-id=host
9.
Dans la réponse, recherchez le principal-id :
<principal principal-id="2006282569" is-primary="false" type="user"
has-children="false" permission-id="host"> <name>jazz doe</name> <login>jazzdoe@example.com</login> </principal>
10.
Appelez principal-info en utilisant le principal-id :
https://example.com/api/xml?action=principal-info
&principal-id=2006258745
11.
Dans l’élément principal de la réponse, recherchez name et login (ou name et email):
<principal account-id="624520" disabled="" has-children="false"
is-hidden="false" is-primary="false" principal-id="2006282569"
type="user"> <ext-login>jazzdoe@example.com</ext-login> <login>jazzdoe@example.com</login>
<name>jazz doe</name> <email>jazzdoe@newcompany.com</email>
<first-name>jazz</first-name> <last-name>doe</last-name> <x-2006293620>E3612</x-2006293620> <x-2007017651>San Francisco</x-2007017651> </principal>
Ces éléments concernent l’expéditeur du message électronique, c’est-à-dire l’hôte de la réunion.
60 Chapitre 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
à la réunion :
https://example.com/api/xml?action=permissions-info&acl-id=2007018414
Toutefois, vous n’avez pas besoin de connaître l’autorisation spécifique accordée au mandant avant de supprimer cette autorisation.
2. Obtenez le sco-id de la réunion (voir la section « Recherche du sco-id d’une réunion »).
3. Obtenez le principal-id de l’utilisateur (voir la section « Recherche d’un principal-id »).
4. Appelez permissions-update, en utilisant le sco-id de la réunion comme acl-id et
permission-id=remove :
https://example.com/api/xml?action=permissions-update
&acl-id=2007018414&principal-id=2006258745&permission-id=remove
permissions-update avec une

Calcul du taux d’utilisation d’une réunion

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éunion 61
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
(éventuellement) une autre valeur :
https://example.com/api/xml?action=report-bulk-consolidated-transactions
&filter-type=meeting&filter-gt-date-created=2006-07-01
Le second filtre peut cibler les dates de début et de fin de la transaction, le principal-
de l’utilisateur, le sco-id d’une réunion spécifique ou un autre filtre valide
id
répondant à vos besoins.
Cet appel renvoie toutes les transactions répondant aux critères du filtre. Attendez-
vous à une réponse volumineuse.
2. Dans les éléments row de la réponse, recherchez date-created et date-closed :
<row transaction-id="2007071217" sco-id="2007071193" type="meeting"
principal-id="2007003123" score="0"> <name>Thursday Meeting</name> <url>/thursday/</url> <login>jazz@doe.com</login> <user-name>jazzwayjazz doe</user-name> <status>completed</status> <date-created>2006-08-03T12:33:48.547-07:00</date-created> <date-closed>2006-08-03T12:34:04.093-07:00</date-closed> </row>
3.
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.
62 Chapitre 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 :
<quota acl-id="624529" quota-id="concurrent-user-per-meeting-quota"
used="0" limit="2500" soft-limit="2500"> <date-begin>2004-03-09T09:45:02.297-08:00</date-begin> <date-end>2999-12-31T16:00:00.000-08:00</date-end> </quota>
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 :
https://example.com/api/xml?action=report-meeting-concurrent-users
4.
Dans la réponse, recherchez l’élément report-meeting-concurrent-users. Lisez la valeur de l’attribut
<?xml version="1.0" encoding="utf-8" ?> <results> <status code="ok" /> <report-meeting-concurrent-users max-users="18"
max-participants-freq="3" />
</results>
max-users et comparez-la à celle de soft-limit :

Obtention des archives de réunion

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éunion 63
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 :
https://example.com/api/xml?action=sco-contents&sco-id=2007018414
&filter-icon=archive
3.
Dans la réponse, recherchez l’élément sco et récupérez les informations désirées, telles que
name, date-created ou url-path :
<sco sco-id="2598402" source-sco-id="" folder-id="2598379"
type="content" icon="archive" display-seq="0" is-folder="0"> <name>EN - Monday Night Football_0</name> <url-path>/p71144063/</url-path> <date-begin>2004-05-17T15:51:54.670-07:00</date-begin> <date-end>2004-05-17T15:54:52.920-07:00</date-end> <date-modified>2004-05-17T15:55:00.733-07:00</date-modified> <duration>00:02:58.250</duration> </sco>

Obtention des résultats du sondage d’une réunion

Pour accéder aux résultats d’un sondage effectué pendant une réunion, utilisez report-quiz-
interactions
un filtre pour affiner la réponse.
Chaque réponse à choix multiples du sondage présente un identifiant entier, la première réponse de la liste présentant le numéro 0, la seconde 1, etc.
. Cette action renvoie tous les résultats du sondage, mais vous pouvez utiliser
Réponse 0
Réponse 1
64 Chapitre 4: Réunions
Page 65
Obtention des résultats du sondage d’une réunion
1. Assurez-vous que l’hôte de la réunion a clôturé le sondage.
Les résultats du sondage sont mis en cache dans la réunion jusqu’à la clôture du sondage.
2. Obtenez le sco-id de la réunion (voir « Recherche du sco-id d’une réunion »).
3. Appelez report-quiz-interactions, en utilisant le sco-id de la réunion :
https://example.com/api/xml?action=report-quiz-interactions
&sco-id=2007071193
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éunion 65
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
salle de réunion :
http://example.com/employeeMeeting/?session=breezbityp829r9ozv5rd
5.
Ouvrez l’URL de la salle de réunion à laquelle est accolé session. Pour ce faire, une méthode consiste à utiliser la commande JavaScript
<a href=”http://example.com/employeeMeeting/” onClick="javascript:window.open('http://example.com/employeeMeeting/
?session=breezbityp829r9ozv5rd','Breeze', 'toolbar=no,menubar=no,width=800,height=600,resizable=yes'); return false">http://example.com/employeeMeeting/</a>
onClick :
66 Chapitre 4: Réunions
Page 67
Démarrage d’une réunion et accès de l’utilisateur en tant qu’invité
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 après
l’appel de
Set-Cookie: BREEZESESSION=breezqw4vtfarqxvf9pk2;
3.
Dans votre application, créez une URL de salle de réunion (voir la section Création des URL
login :
domain=.macromedia.com;path=/
de salles de réunion).
4. Ajoutez un paramètre guestname et le nom d’affichage de l’utilisateur invité dans l’URL
de la salle de réunion :
http://example.com/employeeMeeting/?guestName=joy
5.
Ouvrez l’URL de salle de réunion présentant le paramètre guestname. Pour ce faire, une méthode consiste à utiliser la commande JavaScript
<a href=”http://example.com/employeeMeeting/” onClick="javascript:window.open('http://example.com/employeeMeeting/
?guestName=joy','Breeze', 'toolbar=no,menubar=no,width=800,height=600,resizable=yes'); return false">http://example.com/employeeMeeting/</a>
onClick :
Démarrage des réunions avec authentification externe 67
Page 68
68 Chapitre 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
<sco tree-id="123456" sco-id="123456" type="courses"> <domain-name>example.com</domain-name> </sco>
sco-shortcuts :
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
70 Chapitre 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 curriculums 71
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 :
<sco tree-id="624528" sco-id="624528" type="courses"> <domain-name>http://example.com</domain-name> </sco>
Vous ne pouvez pas utiliser de filtre avec sco-shortcuts, mais vous pouvez rechercher dans la réponse l’élément
3. Appelez sco-contents, en transmettant le sco-id du dossier courses et en appliquant
sco pour lequel type=courses.
un filtre sur vos dossiers de formation spécialisés :
https://example.com/api/xml?action=sco-contents&sco-id=624528
&filter-name=Sales Training
Vous pouvez utiliser filter-name, filter-url-path, un autre filtre de
correspondance exacte ou un filtre de date. Faites cependant attention lorsque vous utilisez
filter-like-name car il risque d’affecter les performances du serveur.
Vous pouvez également obtenir le sco-id de votre dossier de formation spécialisé dans
l’URL du navigateur dans Enterprise Manager et le transmettre à
4. Dans la réponse, recherchez le sco-id de votre dossier de formations spécialisé :
<sco sco-id="2007122244" source-sco-id="" folder-id="624528"
type="folder" icon="folder" display-seq="0" is-folder="1">
5.
Appelez sco-contents, en lui transmettant le sco-id du dossier de formation spécialisé
sco-contents.
et en ajoutant un filtre qui identifie le cours ou le curriculum :
https://example.com/api/xml?action=sco-contents
&sco-id=2007122244&filter-name=Java 201
Vous pouvez appeler sco-contents, plutôt que sco-expanded-contents, si tous les
cours et tous les curriculums sont stockés au niveau le plus élevé de votre dossier de formation spécialisé. Les performances en seront améliorées.
Vous pouvez définir des champs personnalisés pour les SCO si cela facilite leur
identification dans les recherches (voir la section « Création de champs
personnalisés »)
72 Chapitre 5: Formations
Page 73
6. Dans les éléments sco de la réponse, recherchez le sco-id du cours ou du curriculum :
<sco depth="2" sco-id="2006745673" folder-id="2006745671" type="content"
icon="course" lang="en" source-sco-id="2006744233"
display-seq="1" source-sco-type="0">
<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 :
https://example.com/api/xml?action=sco-contents&sco-id=2006258748
sco-id en naviguant jusqu’au dossier dans Enterprise
sco-id dans l’URL du navigateur.
La meilleure méthode consiste à créer des dossiers de formation spécialisés un niveau au­dessous. Se faisant, vous pouvez appeler
contents
3. Dans la réponse, recherchez name, url-path ou toute autre valeur que vous souhaitez
. Les performances en sont améliorées.
sco-contents plutôt que sco-expanded-
afficher :
<sco sco-id="2007035246" source-sco-id="2006334909"
folder-id="2006258748" type="content" icon="course"
display-seq="0" is-folder="0">
<name>Java 101</name> <url-path>/java101/</url-path> <date-begin>2006-07-20T17:15:00.000-07:00</date-begin> <date-modified>2006-07-20T17:21:38.860-07:00</date-modified>
</sco>

Affichage de la formation d’un utilisateur

Une fois qu’un utilisateur est connecté, vous pouvez dresser la liste de tous les cours auxquels il est inscrit avec
training
l’utilisateur est inscrit, pas tous les cours disponibles.
report-my-courses, ou de tous ses cours et curriculums avec report-my-
. La liste ne contient que les cours (ou les cours et les curriculums) auxquels
Affichage de la formation d’un utilisateur 73
Page 74
Affichage des cours et curriculums d’un utilisateur
1. Connectez l’utilisateur (voir la section « Connexion depuis une application »).
2. Appelez report-my-training pour dresser la liste de tous les cours et curriculums
auxquels l’utilisateur est inscrit :
https://example.com/api/xml?action=report-my-training
3.
Dans la réponse, recherchez name, url ou toute autre valeur que vous souhaitez afficher :
<row sco-id="2007035246" type="content" icon="course"
permission-id="view">
<name>Java 101</name> <url>example.com/java101/</url> <date-created>2006-07-20T17:21:11.940-07:00</date-created> <date-modified>2006-07-20T17:21:38.860-07:00</date-modified> <date-begin>2006-07-20T17:15:00.000-07:00</date-begin> <url-path>/java101/</url-path> <expired>false</expired> <completed>false</completed>
</row>
Affichage de l’état de tous les cours et curriculums de l’utilisateur
1. Obtenez le principal-id de l’utilisateur (voir la section « Recherche d’un principal-id »).
2. Appelez report-user-trainings-taken :
https://example.com/api/xml?action=report-user-trainings-taken
&principal-id=2006258745
3.
Dans la réponse, recherchez status :
<row transcript-id="2006293632" max-retries="" sco-id="2564016"
type="content" icon="course" status="completed"
certificate="2006293632" score="0" permission-id="" attempts="1">
<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.
74 Chapitre 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
cours en tant que
https://example.com/api/xml?action=permissions-update
&acl-id=2007035246&principal-id=2006258745&permission-id=view
4.
Appelez report-my-training pour dresser la liste de tous les cours et curriculums auxquels l’utilisateur est inscrit :
https://example.com/api/xml?action=report-my-training
5.
Dans les éléments row de la réponse, recherchez les valeurs que vous souhaitez afficher :
<row sco-id="2007035246" type="content" icon="course"
</row>
permission-id="view">
<name>Java 101</name> <url>example.com/java101/</url> <date-created>2006-07-20T17:21:11.940-07:00</date-created> <date-modified>2006-07-20T17:21:38.860-07:00</date-modified> <date-begin>2006-07-20T17:15:00.000-07:00</date-begin> <url-path>/java101/</url-path> <expired>false</expired> <completed>false</completed>
permissions-update pour inscrire un utilisateur à la fois. Vous pouvez
acl-id, avec un permission-id view :
Inscription d’un utilisateur 75
Page 76
Inscription d’un nouvel utilisateur par flux de travail
1. Appelez principal-update pour créer le nouvel utilisateur et lui envoyer un message
électronique de bienvenue :
https://example.com/api/xml?action=principal-update&first-name=jazz
&last-name=doe&login=jazz@doe.com&password=hello&type=user &send-email=true&has-children=0&email=jazz@doe.com
Pour envoyer le message, assurez-vous que send-email=true.
2. Connectez l’utilisateur au serveur :
https://example.com/api/xml?action=login&login=jazz@doe.com
&password=hello&session=breezma6zor9rdfps8h6a
Voir la section « Connexion depuis une application » pour connaître les autres façons d’appeler
3. Appelez group-membership-update avec is-member=true pour ajouter l’utilisateur au
login.
groupe :
https://example.com/api/xml?action=group-membership-update
&group-id=4930296&principal-id=2006258745&is-member=true
4.
Appelez permissions-update pour inscrire l’utilisateur dans un curriculum :
https://example.com/api/xml?action=permissions-update
&acl-id=2006745669&principal-id=2007124930&permission-id=view
Utilisez le permission-id view.
5. Appelez report-my-training pour dresser la liste des cours et curriculums auxquels
l’utilisateur est inscrit :
https://example.com/api/xml?action=report-my-training
6.
Dans les éléments row de la réponse, recherchez les valeurs que vous souhaitez afficher :
<row sco-id="2006745669" type="curriculum" icon="curriculum"
</row>
permission-id="view">
<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>
76 Chapitre 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
souhaitez inscrire :
https://example.com/api/xml?action=principal-list&filter-type=user
&filter-type=sales
Lisez les valeurs dans un fichier.
3. Rédigez une méthode qui appelle permissions-update avec plusieurs trios acl-id,
principal-id et permission-id :
https://example.com/api/xml?action=permissions-update
&acl-id=2007064258&principal-id=2007105030&permission-id=view &acl-id=2007064258&principal-id=2006258745&permission-id=view ...
Le acl-id correspond au sco-id du cours.
Pour inscrire des utilisateurs, le permission-id est view.
Le principal-id est unique dans chaque trio.
Si les informations de l’un des trios sont incorrectes, état
ok et exécute les trios corrects, mais pas ceux qui sont invalides.
4. Appelez permissions-info pour vérifier que les utilisateurs ont bien été inscrits :
https://example.com/api/xml?action=permissions-info
&acl-id=2007064258&filter-permission-id=view
Sans principal-id, cet appel renvoie la liste de tous les mandants inscrits au cours.
permissions-update renvoie un
Inscription d’un grand nombre d’utilisateurs 77
Page 78
Annulation de l’inscription d’un grand nombre d’utilisateurs (plus de 1 000) 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 chacun des utilisateurs que vous souhaitez retirer. Vous
pouvez :
Appeler principal-list avec des filtres pour dresser la liste des utilisateurs que vous
souhaitez désinscrire :
https://example.com/api/xml?action=principal-list&filter-type=user
&filter-account-id=624520
Lisez les valeurs dans un fichier.
3. Rédigez une méthode qui appelle permissions-update avec plusieurs trios acl-id,
principal-id et permission-id :
https://example.com/api/xml?action=permissions-update
&acl-id=2007064258&principal-id=2007105030&permission-id=denied &acl-id=2007064258&principal-id=2006258745&permission-id=denied ...
Pour annuler l’inscription des utilisateurs du cours, l’élément permission-id doit être
denied.
4. Appelez permissions-info pour vérifier que les utilisateurs ont bien été supprimés :
https://example.com/api/xml?action=permissions-info
&acl-id=2007064258&filter-permission-id=denied
Inscription d’un grand groupe (plus de 1000) dans un cours
1. Créez un groupe.
Avec l’API XML Appelez principal-update et, dans la réponse, recherchez le
principal-id :
https://example.com/api/xml?action=principal-update&type=group
&has-children=1&name=developersc5
Avec Enterprise Manager
et Groupes > Nouveau groupe. Récupérez le
Créez le groupe en choisissant Administration > Utilisateurs
principal-id du nouveau groupe dans
l’URL du navigateur.
78 Chapitre 5: Formations
Page 79
2. Ajoutez les utilisateurs que vous souhaitez inscrire dans le groupe. Vous pouvez utiliser
un appel d’API ou Enterprise Manager, mais vous ne pouvez ajouter que 200 utilisateurs à la fois.
Avec l’API XML Appelez group-membership-update, en utilisant plusieurs trios
group-id, principal-id et is-member=true :
https://example.com/api/xml?action=group-membership-update
&group-id=4930296&principal-id=2006258745&is-member=true &group-id=4930296&principal-id=2007343711&is-member=true
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 :
https://example.com/api/xml?action=permissions-update
&acl-id=2007064258&principal-id=2007105030&permission-id=view
sco-id du dossier de formation spécialisé qui contient le cours.
Désinscription d’un grand groupe (plus de 1000) d’un cours
1. Appelez permissions-info sur le cours, en appliquant un filtre sur un permission-id
view :
https://example.com/api/xml?action=permissions-info
&acl-id=2007064258&filter-permission-id=view&filter-type=group
2.
Dans la réponse, recherchez le principal-id du groupe :
<principal principal-id="2006258745" is-primary="false" type="group"
</principal>
3.
Appelez permissions-update avec le permission-id denied pour supprimer l’accès du
has-children="true" permission-id="view">
<name>developers</name> <login>developers@acme.com</login>
groupe au cours :
https://example.com/api/xml?action=permissions-update
&acl-id=2007064258&principal-id=2007105030&permission-id=denied
Inscription d’un grand nombre d’utilisateurs 79
Page 80

Affichage des informations sur un curriculum

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 :
https://example.com/api/xml?action=permissions-info
&acl-id=2006298444&filter-permission-id=view
L’ acl-id correspond au sco-id du cours ou du curriculum.
Le permission-id view signifie que l’utilisateur est inscrit.
2. Dans la réponse, recherchez principal-id, name et toute autre valeur nécessaire :
<principal principal-id="2006258745" is-primary="false" type="user"
has-children="false" permission-id="view"> <name>Joy Smith</name> <login>joy@acme.com</login>
</principal>
sco-id du curriculum ou du cours et le principal-id de
Obtention de la liste des cours d’un curriculum
Un curriculum est un type de dossier et vous pouvez dresser la liste de son contenu avec sco-
contents
1. Obtenez le sco-id du curriculum (voir « Recherche du sco-id d’un cours ou d’un
ou sco-expanded-contents.
curriculum »).
2. Appelez sco-expanded-contents, en lui transmettant le sco-id :
https://example.com/api/xml?action=sco-expanded-contents
&sco-id=2006745669
80 Chapitre 5: Formations
Page 81
3. Dans la réponse, recherchez les éléments sco-id, folder-id et depth :
<sco depth="1" sco-id="2006745674" folder-id="2006745669" type="link"
icon="course" lang="en" source-sco-id="2006745673"
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
user-id :
https://example.com/api/xml?action=report-curriculum-taker
&user-id=2006258745&sco-id=2006745669
4.
Dans la réponse, recherchez l’attribut status de chaque élément sco et des autres valeurs à afficher dans votre application :
<sco transcript-id="2006745722" path-type="prereq-none" asset-id=""
sco-id="2006745674" depth="1" folder-id="2006745669" type="15"
icon="course" lang="en" max-retries="" source-sco-id="2006745673"
source-sco-type="0" status="user-passed" score="0" certificate=""
max-score="0" attempts="0"> <access>access-open</access> <credit-granted>true</credit-granted>
<name>All About Web Communities</name>
<url-path>/l80422078/</url-path> <description>test</description> <date-created>2006-06-12T15:06:02.947-07:00</date-created> <date-modified>2006-06-12T14:48:25.980-07:00</date-modified> <date-taken>2006-06-12T15:06:02.947-07:00</date-taken> <override>false</override>
</sco>
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 curriculum 81
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
en triant la note :
https://example.com/api/xml?action=report-user-training-transcripts
&principal-id=2006258745&filter-sco-id=2006334909&sort-score=desc
4.
Dans la réponse, recherchez la note la plus élevée, généralement indiquée par le premier élément
<row transcript-id="2006335954" sco-id="2006334909"
</row>
row de la liste :
principal-id="2006258745" status="user-passed" score="20"
max-score="20" certificate="2006335954" type="content"
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>
82 Chapitre 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 :
report-curriculum-taker report-my-training report-user-trainings-taken report-user-training-transcripts
Une action de champ personnalisé
services Web de la version 6 :
custom-fields
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
6
Action Supprimée Remplacée par
accesskey-exec
accesskey-info
action-list
Breeze 5 Pas de remplacement
Breeze 5 Pas de remplacement
Services Web 6 Pas de remplacement
83
Page 84
Action Supprimée Remplacée par
report-account-meeting-attendance
report-active-meeting-presenters
report-bandwidth
report-bulk-content-quiz
report-bulk-content-quiz-results
report-bulk-content-slide-views
report-bulk-course-quiz
report-bulk-course-results
report-bulk-meeting
report-bulk-meeting-attendance
report-course-takers
report-disk-usage
report-meeting-session
report-meeting-session-slots
report-principal-list
report-quiz-answer-distribution
report-quiz-definition-answers
report-quiz-definition-questions
Breeze 5 report-meeting-attendance,
report-bulk-consolidated­transactions
Services Web 6 Pas de remplacement
Breeze 5 Pas de remplacement
Breeze 5 Pas de remplacement
Breeze 5 report-quiz-interactions,
report-quiz-question-distribution, report-quiz-question-response, report-quiz-takers, report-quiz-summary
Breeze 5 report-bulk-slide-views
Breeze 5 Pas de remplacement
Breeze 5 report-quiz-interactions
Breeze 5 report-bulk-objects avec
filter-type=meeting
Breeze 5 Pas de remplacement
Breeze 5 report-quiz-takers
Breeze 5 Pas de remplacement
Breeze 5 report-meeting-sessions,
filtrage sur
asset-id
Breeze 5 Pas de remplacement
Breeze 5 acl-field-list,
acl-field-update
Breeze 5 report-quiz-question-answer-
distribution
Breeze 5 report-quiz-interactions,
report-quiz-question-answer­distribution report-quiz-question-distribution, report-quiz-question-response
,
Breeze 5 report-quiz-interactions,
report-quiz-question-answer­distribution report-quiz-question-distribution, report-quiz-question-response
,
84 Chapitre 6: Référence des actions
Page 85
Action Supprimée Remplacée par
report-quiz-question-totals
report-survey-question-response
sco-build
Breeze 5 report-quiz-question-distribution
Breeze 5 Pas de remplacement
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
acl-id,
acl-id peut être un sco-id, un
URL de requête
http://server_name/api/xml
?action=acl-field-info &acl-id=integer &session=BreezeSessionCookieValue
acl-field-info 85
Page 86
Paramètres
Nom Type Obligatoire Description
acl-id
session
Entier O Identifiant du SCO, du compte ou du
mandant pour lequel vous souhaitez des informations de champ. Il peut s’agir d’un
sco-id, d’un account-id ou d’un
principal-id valide.
Chaîne N Valeur du cookie BREEZESESSION. Utilisez
ce paramètre si votre environnement ne prend pas en charge les cookies.
Filtres
Les résultats ne peuvent pas être filtrés ou triés.
Structure de la réponse
<?xml version="1.0" encoding="utf-8" ?> <results>
<status code=allowedValue /> <acl-fields>
<field acl-id=integer field-id=string>
<value>string</value> </field> ...
</acl-fields>
</results>
Valeurs des réponses
Elément Attribut Type Description
results
status
code
acl-fields
86 Chapitre 6: Référence des actions
Conteneur Tous les résultats renvoyés par l’action.
Vide, avec
Etat de la réponse. des attributs
Valeur autorisée
Code indiquant l’état de la réponse (voir
la section
status).
Conteneur Informations sur tous les champs
décrivant le mandant, le compte ou
l’objet.
Page 87
Elément Attribut Type Description
field
acl-id
field-id
value
Conteneur Un champ décrivant le mandant, le
compte ou l’objet.
Entier L’acl-id spécifié dans la requête, qui est
sco-id, un principal-id ou un
un
account-id.
Chaîne Nom du champ.
Chaîne Valeur du champ.
Exemple de requête
https://example.com/api/xml?action=acl-field-info&acl-id=2006258745
Exemple de réponse
<?xml version="1.0" encoding="utf-8" ?> <results>
<status code="ok" /> <acl-fields>
<field acl-id="2006258745" field-id="email">
<value>joy@acme.com</value> </field> <field acl-id="2006258745" field-id="first-name">
<value>Joy</value> </field> <field acl-id="2006258745" field-id="last-name">
<value>Smith</value> </field>
</acl-fields>
</results>
Voir aussi
acl-field-list, acl-field-update

acl-field-list

Disponibilité
Breeze 5, Connect Enterprise Web Services 6
Description
Renvoie la liste des valeurs de toutes les instances d’un nom de champ présentes sur votre Enterprise Server ou dans votre compte Enterprise Hosted.
acl-field-list 87
Page 88
Par exemple, pour obtenir la liste des prénoms de tous les utilisateurs du compte, appelez
acl-field-list avec field-id=first-name.
Vous pouvez d’abord appeler
acl-field-info pour obtenir la liste des noms de champ.
URL de requête
http://server_name/api/xml
?action=acl-field-list &field-id=string &session=BreezeSessionCookieValue
Paramètres
Nom Type Obligatoire Description
field-id
session
Chaîne O Nom d’un champ de la liste de contrôle
d’accès dont vous souhaitez des valeurs et des identifiants. Un seul nom de champ est autorisé.
Chaîne N Valeur du cookie BREEZESESSION. Utilisez
ce paramètre si votre environnement ne prend pas en charge les cookies.
Filtres
Les résultats ne peuvent pas être filtrés ou triés.
Structure de la réponse
<?xml version="1.0" encoding="utf-8" ?> <results>
<status code=allowedValue /> <acl-field-list>
<acl acl-id=integer>
<value>string</value> </acl> ...
</acl-field-list>
</results
88 Chapitre 6: Référence des actions
Page 89
Valeurs des réponses
Elément Attribut Type Description
results
status
code
acl-field-list
acl
acl-id
value
Conteneur Tous les résultats renvoyés par
l’action.
Vide, avec des
Etat de la réponse.
attributs
Valeur autorisée Code indiquant l’état de la réponse
(voir la section
status).
Conteneur Informations sur toutes les valeurs du
compte pour le champ spécifié.
Conteneur Informations sur une valeur pour le
champ spécifié.
Entier Identifiant du mandant, du SCO ou du
compte auquel le champ appartient.
Chaîne Valeur du champ.
Exemple de requête
https://example.com/api/xml?action=acl-field-list&field-id=first-name
Exemple de réponse
<?xml version="1.0" encoding="utf-8" ?> <results>
<status code="ok"/> <acl-field-list>
<acl acl-id="381223">
<value>John</value> </acl> <acl acl-id="381302">
<value>Daryl</value> </acl> <acl acl-id="381405">
<value>Mary</value> </acl>
</acl-field-list>
</results>
Voir aussi
acl-field-info, acl-field-update
acl-field-list 89
Page 90

acl-field-update

Disponibilité
Breeze 5, Connect Enterprise Web Services 6
Description
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
field-id dont vous avez besoin pour la requête à
<status code="ok" /> <acl-fields>
<field acl-id="2006258745" field-id="email">
<value>joy@acme.com</value> </field> ...
</acl-fields>
?action=acl-field-update &acl-id=integer &field-id=string &value=string &session=BreezeSessionCookieValue
Paramètres
Nom Type Obligatoire Description
acl-id
field-id
90 Chapitre 6: Référence des actions
Entier O Identifiant de l’objet, du mandant ou du
compte. Il peut s’agir d’un
account-id ou d’un principal-id valide.
Chaîne O Nom du champ dont vous voulez actualiser
la valeur. Il peut s’agir d’un champ défini par le serveur ou d’un champ personnalisé.
sco-id, d’un
Page 91
Nom Type Obligatoire Description
value
session
Chaîne O La nouvelle valeur à définir.
Chaîne N Valeur du cookie BREEZESESSION. Utilisez ce
paramètre si votre environnement ne prend pas en charge les cookies.
Filtres
Les résultats ne peuvent pas être filtrés ou triés.
Structure de la réponse
<?xml version="1.0" encoding="utf-8" ?> <results>
<status code=allowedValue />
</results>
Valeurs des réponses
Elément Attribut Type Description
results
status
code
Exemple de requête
https://example.com/api/xml?action=acl-field-update&acl-id=2006404141
&field-id=first-name&value=jazz
Conteneur Tous les résultats renvoyés par l’action.
Vide, avec des attributs
Valeur autorisée
Etat de la réponse.
Code indiquant l’état de la réponse (voir la section
status).
Exemple de réponse
<?xml version="1.0" encoding="utf-8" ?> <results>
<status code="ok" />
</results>
Voir aussi
acl-field-list
acl-field-update 91
Page 92

acl-preference-update

Disponibilité
Breeze 4 et Breeze 5 ; Connect Enterprise Web Services 6
Description
Actualise un profil d’utilisateur avec de nouveaux paramètres de langue et de fuseau horaire.
URL de requête
http://server_name/api/xml
?action=acl-preference-update &acl-id=integer &lang=allowedValue &time-zone-id=allowedValue &session=BreezeSessionCookieValue
Paramètres
Nom Type Obligatoire Description
acl-id
lang
time-zone-id
session
Entier O Identifiant de l’utilisateur dont les
préférences seront actualisées. Peut être un
Valeur autorisée N Abréviation de la nouvelle langue
(voir la section valides).
Valeur autorisée N Paramètre entier correspondant au
nouveau fuseau horaire (voir la section valeurs valides).
Chaîne N Valeur du cookie BREEZESESSION.
Utilisez ce paramètre si votre environnement ne prend pas en charge les cookies.
principal-id valide.
lang pour les valeurs
time-zone-id pour les
Filtres
Les résultats ne peuvent pas être filtrés ou triés.
Structure de la réponse
<?xml version="1.0" encoding="utf-8" ?> <results> <status code=allowedValue /> </results>
92 Chapitre 6: Référence des actions
Page 93
Valeurs des réponses
Elément Attribut Type Description
results
status
code
Conteneur Tous les résultats renvoyés par
l’action.
Vide, avec des attributs
Valeur autorisée Code indiquant l’état de la réponse
Etat de la réponse.
(voir la section
status).
Exemple de requête
https://server.com/api/xml?action=acl-preference-update&acl-id=12345
&lang=fr&time-zone-id=0
Exemple de réponse
<?xml version="1.0" encoding="utf-8" ?> <results>
<status code="ok" />
</results>

common-info

Disponibilité
Breeze 4 et Breeze 5 ; Connect Enterprise Web Services 6
Description
Renvoie des informations de base sur l’utilisateur en cours et le serveur ou le compte hébergé, y compris la valeur du cookie
Si vous appelez
account car le serveur ne peut pas identifier un utilisateur. Toutefois, common-info renvoie
toujours le cookie
URL de requête
http://server_name/api/xml
?action=common-info &domain=string &session=BreezeSessionCookieValue
common-info sans connexion, la réponse ne contient pas les éléments user et
BREEZESESSION, même avant que vous soyez connecté(e).
BREEZESESSION.
common-info 93
Page 94
Paramètres
Nom Type Obligatoire Description
domain
session
Chaîne N Nom de domaine identifiant un
compte hébergé. A utiliser pour obtenir des informations sur votre compte hébergé.
Chaîne N Valeur du cookie BREEZESESSION.
Utilisez ce paramètre si votre environnement ne prend pas en charge les cookies.
Filtres
Les résultats ne peuvent pas être filtrés ou triés.
Structure de la réponse
<?xml version="1.0" encoding="utf-8" ?> <results>
<status code=allowedValue /> <common locale=allowedValue time-zone-id=integer>
<cookie>string</cookie> <date>datetime</date> <host>url</host> <local-host>hostname</local-host> <url>/api/xml?action=common-info</url> <version>string</version> <account account-id=integer /> <user user-id=integer type="user">
<name>string</name>
<login>string</login> </user> <user-agent>string</user-agent>
</common>
</results>
Valeurs des réponses
Elément Attribut Type Description
results
status
code
94 Chapitre 6: Référence des actions
Conteneur Tous les résultats renvoyés par
l’action.
Vide, avec des attributs
Valeur autorisée Code indiquant l’état de la réponse
Etat de la réponse.
(voir la section
status).
Page 95
Elément Attribut Type Description
common
locale
time-zone-id
cookie
date
host
local-host
url
version
account
account-id
Conteneur Informations 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îne Valeur du cookie BREEZESESSION
(chaîne renvoyée par le serveur et identifiant cet utilisateur pour cette session).
Date et heure Date et heure de l’appel à common-
, au format ISO 8601.
info
Chaîne URL du nom d’hôte pleinement
qualifié du serveur. Dans un cluster, nom qui identifie le cluster.
Chaîne Nom 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îne Partie de l’URL passant cet appel
qui identifie le nom de l’action.
Chaîne Numé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é.
Entier Identifiant du compte auquel
l’utilisateur appartient.
lang pour
time-
host ;
common-info 95
Page 96
Elément Attribut Type Description
user
user-id
type
name
login
user-agent
Conteneur Informations sur l’utilisateur qui a
établi une session avec le serveur. Renvoyé uniquement si l’utilisateur qui effectue l’appel est connecté.
Entier Identifiant 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îne Nom complet de l’utilisateur qui a
établi une session avec le serveur.
Chaîne Nom d’utilisateur de l’utilisateur
connecté au serveur, généralement son adresse électronique.
Chaîne Identifiant du client ou du
navigateur Web qui a établi une session avec le serveur.
Exemple de requête
https://example.com/api/xml?action=common-info
Exemple de réponse
<?xml version="1.0" encoding="utf-8" ?> <results>
<status code="ok" /> <common locale="en" time-zone-id="4">
<cookie>breezsi4dundh5srw2fq6</cookie> <date>2006-09-08T11:17:04.470-07:00</date> <host>https:example.com</host> <local-host>localserver17</local-host> <url>/api/xml?action=common-info</url> <version>connect_6000</version> <account account-id="624520" /> <user user-id="2006258745" type="user">
<name>Joy Smith</name>
<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).
96 Chapitre 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
URL de requête
http://server_name/api/xml
?action=custom-fields &filter-definition=value &session=BreezeSessionCookieValue
Paramètres
Nom Type Obligatoire Description
session
Chaîne N Valeur du cookie BREEZESESSION. Utilisez ce
paramètre si votre environnement ne prend pas en charge les cookies.
custom-field-update.
Filtres
Vous pouvez filtrer ou trier la réponse en fonction de n’importe quel élément ou attribut qu’elle contient.
custom-fields 97
Page 98
Structure de la réponse
<?xml version="1.0" encoding="utf-8" ?> <results>
<status code=allowedValue /> <custom-fields>
<field permission-id=allowedValue object-type=allowedValue
field-id=string account-id=integer display-seq=integer field-type=allowedValue is-primary=boolean is-required=boolean>
<name>string</name> </field>
</custom-fields>
</results>
Valeurs des réponses
Elément Attribut Type Description
results
status
code
custom-fields
field
permission-id
object-type
field-id
account-id
Conteneur Tous les résultats renvoyés par
l’action.
Vide, avec des
Etat de la réponse.
attributs Valeur autorisée Code indiquant l’état de la réponse
(voir la section
Conteneur Liste des champs personnalisés
correspondant à la requête.
Conteneur Détails relatifs à un champ
personnalisé.
Valeur autorisée Autorisation accordée à l’utilisateur
actif pour accéder au champ personnalisé (voir la section
permission-id pour les valeurs
valides).
Valeur autorisée Type d’objet décrit par le champ
personnalisé (voir la section
permission-id pour les valeurs
valides).
Chaîne Nom du champ, tel qu’identifié sur le
serveur.
Entier Identifiant du compte dans lequel le
champ personnalisé est défini.
status).
98 Chapitre 6: Référence des actions
Page 99
Elément Attribut Type Description
display-seq
field-type
is-primary
is-required
name
Entier Ordre dans lequel Enterprise
Manager ou votre application affiche le champ personnalisé, par rapport aux autres champs personnalisés.
Valeur autorisée Type de données accepté par le
champ personnalisé. Les valeurs
text, textarea et
false et true
Valeur booléenne
autorisées sont
password.
Indique si le champ personnalisé peut être supprimé ( dans le cas contraire).
Valeur booléenne
Indique si ce champ personnalisé est obligatoire (
true lorsqu’une
valeur doit être spécifiée pour ce champ dans chaque objet qui l’utilise,
false dans le cas contraire).
Chaîne Nom du champ personnalisé tel que
Enterprise Manager ou votre application l’affiche.
Exemple de requête
https://example.com/api/xml?action=custom-fields&filter-like-name=name
Exemple de réponse
<?xml version="1.0" encoding="utf-8" ?> <results>
<status code="ok" /> <custom-fields>
<field permission-id="manage" object-type="object-type-principal"
field-id="first-name" account-id="624520" display-seq="1" field-type="text" is-primary="true" is-required="true">
<name>First Name</name> </field> <field permission-id="manage" object-type="object-type-principal"
field-id="last-name" account-id="624520" display-seq="2" field-type="text" is-primary="true" is-required="true">
<name>Last Name</name> </field>
</custom-fields>
</results>
Voir également
custom-field-update
custom-fields 99
Page 100

custom-fields-delete

Disponibilité
Breeze 4 et Breeze 5 ; Connect Enterprise Web Services 6
Description
Supprime un champ personnalisé.
La valeur de puisse être supprimé. Si la valeur de appelez
URL de requête
http://server_name/api/xml
?action=custom-fields-delete &field-id=string &object-type=allowedValue &session=BreezeSessionCookieValue
Paramètres
Nom Type Obligatoire Description
field-id
object-type
session
is-primary pour un champ personnalisé doit être false pour que ce champ
is-primary est true et que vous souhaitez la modifier,
custom-field-update.
Chaîne O Identifiant du champ à supprimer.
Appelez obtenir l’identifiant, qui est renvoyé dans l’attribut
field.
Chaîne O Type du SCO pour lequel le champ
est défini (pour connaître les valeurs valides, voir la section
Chaîne N Valeur du cookie BREEZESESSION.
Utilisez ce paramètre si votre environnement ne prend pas en charge les cookies.
custom-fields-delete pour
field-id de l’élément
Type).
Filtres
Les résultats ne peuvent pas être filtrés ou triés.
Structure de la réponse
<?xml version="1.0" encoding="utf-8" ?> <results>
<status code=allowedValue />
</results>
100 Chapitre 6: Référence des actions
Loading...