Les périphériques Pocket PC actuels utilisent Macromedia Flash 5, qui supporte la fonction XMLSocket pour la connectivité réseau. L’animation Macromedia Flash de cet exemple établit une connexion avec Fortress via ActionScript, à l’aide du kit FFDK (Fortress Flash Development Kit).
Macromedia Flash utilise le kit FFDK pour établir la connexion au serveur Fortress et à une salle de discussion, puis pour envoyer les messages à d’autres animations Flash de la même salle de discussion. Le kit FFDK comprend un jeu d’objets ActionScript destinés à la communication entre Macromedia Flash et Fortress et masquant la complexité des opérations de gestion et de transmission des messages. La Figure 4 présente les objets inclus dans le kit de développement.

Figure 4: diagramme des objets ActionScript du kit FFDK
Le kit FFDK est fourni avec le code source pour faciliter l’apprentissage et vous permettre de développer le code existant. Vous le trouverez dans le dossier ffdk/src de l’archive, ce code étant appelé par les fichiers ActionScript de l’exemple qui se trouvent eux-mêmes dans le dossier as. SETTINGS.as est utilisé pour charger et analyser le fichier settings.xml mentionné à la page précédente, GLYPHS.as étant utilisé pour gérer certains éléments d’interface.
La fonction de discussion principale est fournie par CHAT.as, qui comprend le kit FFDK et les autres fichiers:
// Load the Fortress Flash Development Kit
#include "../ffdk/src/FFDK.Infrastructure.as"
// Load Connection Settings
#include "../as/SETTINGS.as"
// Initialize UI items
#include "../as/GLYPHS.as"
La première image du calque Actions du scénario Scene 1 de l’animation Macromedia Flash appelle la fonction CHAT_createSession pour créer un objet FFDK.Session et développe son prototype pour ajouter un comportement spécifique à l’exemple. Les gestionnaires onEvent indiqués ci-dessous, et particulièrement importants, sont ajoutés au prototype:
Lorsque l’utilisateur clique sur le bouton Connect de l’écran de connexion, la fonction Chat_login est appelée à l’aide de l’objet FFDK.Session pour ouvrir une connexion à Fortress, authentifier l’utilisateur et récupèrer l’objet FFDK.Room, qui gère la saisie et l’interaction dans la salle sur le serveur Fortress.
Lorsque l’utilisateur souhaite quitter la salle, la fonction Chat_logout est appelée pour quitter la salle sur le serveur, mettre fin à la session utilisateur sur le serveur, puis fermer la connexion avec le serveur.
La première image du calque Actions du scénario Scene 1 appelle également la fonction CHAT_setupRoom, qui développe le prototype de base de l’objet FFDK.Room pour ajouter un comportement spécifique à l’exemple. Ces gestionnaires sont appelés par le kit FFDK lorsque les événements sont reçus de la salle de discussion. Certains de ces gestionnaires sont :
Chaque objet FFDK.Room conserve un objet FFDK.ParticipantList permettant de suivre les participants dans la salle modelée par les objets FFDK.Participant. Chaque objet FFDK.Room conserve également un jeu d’objets FFDK.LinkCategory contenant des objets FFDK.RoomLink gérant les chemins de navigation vers d’autres salles du site.
Voyons maintenant comment l’architecture du serveur fonctionne.