Présentation
Flash Remoting est une passerelle entre le player Flash et le serveur d'application. C'est à dire que Flash Remoting permet au player Flash de directement invoquer des méthodes sur le serveur, et ce quelque soit le langage utilisé coté serveur, et d'interpréter directement les informations retournées. Plus besoin de sérialiser désérialiser à chaque échange. Le langage AMF (Action Message Format). Vous pouvez également charger les spécifications de AMF3 sur le site d'Adobe.
Macromedia a développé divers modèle de Flash Remoting pour chaque environnement de dévellopement, .net, ColFusion et Java. Il existe également des alternatives Open Source notamment pour PHP, .net , PERL et Python, ou Java.

Prérecquis et Fichiers nécessaires.
Afin de suivre ce tutorial, il vous est conseillé d'avoir quelques bases en :
- programmation orientée objet
- langage PHP
- langage ActionScript
- PHP MyAdmin ou quelques bases en MySQL et requêtes SQL
et installé les environnements suivant :
- Flash (à partir de MX)
- EasyPHP, WAMP, ou autres alternative afin d'avoir Apache, PHP, MySQL installés sur votre machine
- Fichiers nécessaires
Installation
Divers modules sont nécessaires pour travailler avec Flash Remoting. Du coté serveur il faut installer la passerelle AMFPHP et coté client, il faut ajouter trois modules à Flash. Les composants Flash Remoting, les classes Flash Remoting et le Net Connection Debugger. Il existe plusiieurs sites miroirs qui permettent de télécharger l'ensemble de ces modules. Autant nous rendre directement dans les crémeries d'origine et en profiter pour vériier s'il n'existe pas de nouveautés, de tutoriaux, des forums, etc... bref faire connaissance avec la communauté de cet environnement.
AMFPHP
Pour AMFPHP, l'équipe de développement à mis en place un site blog qui fournit énormément d'informations et de pistes de départ. Vous trouverez deux versions disponibles, la 1.2 et la 1.9 (beta). Patrick Mineault, est un des principaux contributeurs au groupe de travail sur la mise en place de AMFPHP. Le présent tutorial s'appui sur la version 1.2. Vous trouverez des explications sur les avantages de passer en version 1.9 béta, sur ce billet. Décompressez le fichier zip, et placez les fichiers et dossier qu'il contient à la racine du serveur web. Nous explorerons au cours de la prochaine partie son fonctionnement.
Flash Remoting Composants
Avant CS3
Pour les composants, vous pouvez vous rendre sur le site d'Adobe et récupérer l'ensemble des modules en fonction de votre version de Flash. Attention, l'installeur ne prend pas en compte la version CS3 de Flash. Heureusement l'ensemble des extensions fonctionnent quand même correctement à condition d'exporter des anaimations Flash n'utilisant qu'Action Script 2.0 et non Action Script 3.0. Si vous êtes sur une version antérieure à Flash CS3, simplement téléchargez l'installeur et lancez le.
CS3
Pour CS3, il n'existe pas encore de composants et classes qui soit écrit dans cette nouvelle mouture du langage, mais comme rien n'empêche d'utiliser AS 2.0, il est possible d'installer Flash 8, installer l'ensemble des modules du Remoting puis de copier coller l'ensemble des fichiers nécessaires d'un dossier à l'autre, suivant la liste suivante, originellement écrite par Jedders.
NCD
Certains trouve le Net Connection Debuggeur un peu poussif et peu réactif. Il existe une alternative peu honéreuse à cet outil, Service Capture qui offre les fonctionnalités de netConnection Debuggeur et bien plus encore.
Base de données et fichiers

Il ne reste plus qu'à installer la base de données. Servez vous pour cela de PHPMyAdmin et du fichier SQL, images.sql, fournis parmi les fichiers à télécharger. Nommez votre table catalogue.
Faisons le tour du propriétaire

Donc une fois tout ces modules installés qu'avons nous de plus dans l'envirronement de travail. Rien de visible de manière directe, il faut aller les chercher. Le premier changement intervient dans le menu Fenêtre > Bibliothèque communes, où une nouvelle librairie Remoting est apparue. Cette librairie contient les deux composants classes nécessaires pour toute les animations Flash utilisant Remoting.
Il existe également diverses classes qui se sont installées dans le dossier : C:\Program Files\Adobe\Adobe Flash CS3\fr\First Run\Classes\mx\remoting. Nous en explorerons certaines lors de ce tutorial.

Un autre élément qui nous sera bien utile, surtout si vous n'avez pas investi dans Service Capture est le Net Connection Debuger. Cet outil est accessible depuis le menu Fenêtre > Autre Panneaux > Net Connection Debugger, mais vous pouvez également le lancer directement depuis C:\Program Files\Adobe\Adobe Flash CS3\fr\First Run\WindowSWF\NetConnection Debugger.swf.
Nous explorerons également son utilité durant ce tutorial.
Il existe un dernier outil que nous aborderons depuis AMFPHP, qui est le Service Browser. Cet outil est plus qu'utile, en nous permettant entre autre de lister chaque gateway et les services qu'il contiennent, mais également de copier coller du code qu'il soit PHP, notamment avec la fameuse methodeTable, mais aussi de l'ActionScript en préparant pour nous les calsses qui vont invoquer les services.
Dernière vérification coté Serveur

Si vous utilisez des alias depuis votre serveur Apache, assurez vous d'avoir configuré correctement Dreamweaver, afin de pouvoir éventuellement prévisualiser depuis l'outil d'authoring. Vous devriez donc vous retrouver avec à la racinde votre serveur
- le dossier AMF version 1.2
- le dossier images (fournis)
Pour vous assurer que tout soit correct, depuis votre serveur local ouvrez le dossier amfphp, puis lancez le fichier gateway.php. Vous devriez alors obtenir un message vous annoncant que AMFPHP et la passerelle sont correctement installés. Si ce n'était pas le cas, vérifiez que vous avez bien téléchargé un paquetage correct, que vos services Apache et PHP soient correctement lancés, et testez à nouveau.






