Winamp, XMLHTTPRequest et PHP

Voici un petit script amusant pour piloter Winamp avec l'objet javascript XMLHTTPRequest et PHP.

L'interaction avec Winamp se fait à l'aide de boutons de formulaire dans une page HTML qui appelle une page sur le serveur où il est installé à l'aide de l'objet XMLHTTPRequest (sans rechargement de la page). Coté serveur, un utilitaire en ligne de commande est utilisé pour effectuer l'action demandée, tout simplement.

<?php
if ( isset($_GET['message']) ) {
    die(shell_exec('cmd /C CLEveR.exe '.$_GET['message']));
}
?>
<html>
<head>
<script type="text/javascript" language="javascript">
function winamp( message, parameters ) {
    var xmlhttp = false;
    /*@cc_on @*/
    /*@if (@_jscript_version >= 5)
    // JScript gives us Conditional compilation, we can cope with old IE versions.
    // and security blocked creation of the objects.
    try {
    xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
    } catch (e) {
    try {
    xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
    } catch (E) {
    xmlhttp = false;
    }
    }
    @end @*/
    if ( !xmlhttp && typeof XMLHttpRequest!='undefined' ) {
        xmlhttp = new XMLHttpRequest();
    }
    
    xmlhttp.open("GET", "winamp.php?message=" + message,true);
    xmlhttp.send(null);
}
</script>
</head>

<body>
<form onsubmit="return false;">
<input type="button" value="Prev" onclick="winamp('prev');" />
<input type="button" value="Play" onclick="winamp('play');" />
<input type="button" value="Pause" onclick="winamp('pause');" />
<input type="button" value="Stop" onclick="winamp('stop');" />
<input type="button" value="Next" onclick="winamp('next');" /> | 
<input type="button" value="Vol. down" onclick="winamp('voldn');" />
<input type="button" value="Vol. up" onclick="winamp('volup');" />
</form>
</body>
</html>

Note : ce script fonctionne ici sur un serveur Windows mais la même chose pourrait être imaginer sur une autre plateforme avec un autre lecteur multimédia (XMMS sur Linux par exemple). De la même manière, PHP peut tout � fait être remplacé par ASP ou Java.

Une bonne idée de départ pour un pilotage en ligne d'une "multimédia box", n'est-il pas ?

Posté le mardi 21 décembre 2004 dans .

Commentaires

Il n'y a aucun commentaire ; soyez le premier à déposer le vôtre.

Ajouter un commentaire

Il n'est plus possible de réagir à cette entrée directement mais si vous pensez que votre intervention peut être intéressante, envoyez-moi votre commentaire, je l'ajouterai ici en votre nom.