A la découverte de Red5!

Avant d’entrer dans le vif du sujet, commençons par présenter rapidement Red5, pour ceux qui ne connaissent pas :
Il s’agit simplement d’un serveur de streaming, permettant de gérer la diffusion de flux diverses, tels des flux audio, vidéos ou même des connexions vers d’autres serveurs (bases de données...). Il est l’équivalent gratuit et open source de Flash Media Server.

Je vais dans cet article vous donner les premières étapes nécessaires à la mise en place de votre première application.

Répartition des fichiers

Les fichiers JAVA

Toutes les classes utilisées pour créer le côté serveur de l’application sont en JAVA et doivent se situer à l’emplacement suivant :

[dossier_installation_red5]/webapps/[nom-de-l'appli]/WEB-INF/classes/

Les fichiers de configuration

Trois fichiers sont requis pour faire fonctionner votre application, dans le répertoire :

[dossier_installation_red5]/webapps/[nom-de-l'appli]/WEB-INF/

web.xml :

Sert à décrire le nom et le répertoire racine de votre application. Il suffit simplement de remplacer "param-value" dans le tag suivant :

********

red5-web.xml :

Indique au serveur quelle sera la classe qui vous aurez créée comme base à votre application (voire le paragraphe suivant sur la classe ApplicationAdapter). Vous devrez indiquer le nom complet de votre classe (package compris) dans ce tag :

***********

red5-web.properties :

Fichier de propriétés déclarant quelles URL doivent pointer vers votre application :

webapp.contextPath=/demo
webapp.virtualHosts=*, localhost, localhost:8088, 127.0.0.1:8088

La classe : ApplicationAdapter

Toute application Red5 doit étendre la classe native ApplicationAdapter pour permettre de gérer les évènement de bases : dé/connexion, démarrage/arrêt de l’application… Voici un exemple basic de ce type de classe :

package applicationAdapter;
 
import org.red5.server.adapter.ApplicationAdapter;
import org.red5.server.api.IConnection;
import org.apache.log4j.Logger;
 
public class Application extends ApplicationAdapter {
 
private static Logger logger = Logger.getLogger(Application.class);
 
public void appStop() {
logger.info("App stop");
}
 
public void appStart() {
logger.info("App start");
}
 
public boolean appConnect(IConnection conn, Object[] params) {
try {
logger.info("appConnect");
} catch (Exception e) {
e.printStackTrace();
}
return true;
}
 
public void appDisconnect(IConnection conn, Object[] params) {
logger.info("appDisconnect");
}
 
}

Votre application est maintenant prête à être démarrée. Elle sera accessible à l’addresse :

http://localhost:5080/[nom-de-l'appli]/

Dans le prochain article, je vous montrerai le code utilisé pour réaliser un simple client vers notre serveur Red5...


Fichier(s) joint(s) :

0 commentaires: