Forum de Gentil Kiwi . com

Le forum officiel du site, discussions, aide, astuces...

Vous n'êtes pas identifié.

#1 13-01-2007 22:47:34

andre
Nouveau membre
Date d'inscription: 13-01-2007
Messages: 4

[IceCast] Cherche script pour titre en cours.

Bonjour,

Voilà avec plusieurs copains nous animons à chacun notre tour un petite radio. Nous emettons avec winamp et le DSP shoutcast mais nous ne passons pas par le serveur shoucast mais par un serveur de stream (Ekzay.com). Comme notre radio émet en fonction de l'inspiration de chacun c'est pas évident de savoir quand elle est en marche. Aussi j'aimerais trouver un petit script en php qui m'affiche le titre en cours de diffusion, cela suffira à indiquer aux membres présent sur le forum que quelqu'un a lancé la radio.

J'ai cherché longtemps, mais je ne trouve aucun script qui n'affiche que le titre joué et comme je ne maitrise pas php .......

Si quelqu'un se sent inspiré - MERCI -




Ps parce que j'avais oublié : Si nous envoyons le flux radio au serveur de stream Ekzay.com avec le DSP shoutcast, il semblerait que lui il "diffuse" avec Icecast.

Dernière modification par andre (14-01-2007 04:02:42)

Hors ligne

 

#2 14-01-2007 19:59:34

Gentil Kiwi
Administrateur de Kiwis
Lieu: Vers Paris
Date d'inscription: 24-07-2006
Messages: 367
Site web

Re: [IceCast] Cherche script pour titre en cours.

Bonjour,

Que ce soit pour shoutcast, ou icecast, il faut dans tous les cas avoir un moyen d'accès à une page d'administration ou de statut

Ton nom de serveur + port suffisent normalement pour obtenir ces infos ^^

Hors ligne

 

#3 15-01-2007 19:16:12

andre
Nouveau membre
Date d'inscription: 13-01-2007
Messages: 4

Re: [IceCast] Cherche script pour titre en cours.

Gentil Kiwi a écrit:

Bonjour,

Que ce soit pour shoutcast, ou icecast, il faut dans tous les cas avoir un moyen d'accès à une page d'administration ou de statut

Ton nom de serveur + port suffisent normalement pour obtenir ces infos ^^

J'ai tout ça effectivement Gentil Kiwi, ce que je ne sais pas faire c'est un script en php pour aller chercher la variable "Current song"

Tiens regarde ma page de statut >>>> http://img451.imageshack.us/img451/6965/statutrgeyk3.jpg

Si tu arrive à me sortir ce petit script je te paye un coup à boire (virtuel bien sur, puisqu' on est sur le net)

Hors ligne

 

#4 15-01-2007 21:28:59

Gentil Kiwi
Administrateur de Kiwis
Lieu: Vers Paris
Date d'inscription: 24-07-2006
Messages: 367
Site web

Re: [IceCast] Cherche script pour titre en cours.

c'est codé tres rapidement, mais essaye donc ca :

Code:

<?php

function connect_icecast($host, $port)
{
    $fp = @fsockopen($host, $port, $errno, $errstr, 3);
    
    if(!$fp)
        return false;

    fputs($fp, 'GET /status2.xsl' . " HTTP/1.0\r\nUser-Agent: Kiwi Getter (Mozilla Compatible)\r\n\r\n");
    
    $page = '';
    while(!feof($fp))
        $page .= fread($fp, 1000);
    
    fclose($fp);
    return $page;
}

$page = connect_icecast('stream1.ekzay.com', 9635);
preg_match_all('`, - ([^,]*)`i', $page, $matches);

echo 'Titre du stream numero 1 : <strong>' . $matches[1][0] . '</strong><br />';
echo 'Titre du stream numero 2 : <strong>' . $matches[1][1] . '</strong><br />';

?>

Hors ligne

 

#5 15-01-2007 22:27:41

andre
Nouveau membre
Date d'inscription: 13-01-2007
Messages: 4

Re: [IceCast] Cherche script pour titre en cours.

Merci, j'essaye demain (ce soir pas possible) et je te tiens au courant.

Hors ligne

 

#6 16-01-2007 10:33:20

andre
Nouveau membre
Date d'inscription: 13-01-2007
Messages: 4

Re: [IceCast] Cherche script pour titre en cours.

J'ai essayé ton script il marche, merci beaucoup.

Hors ligne

 

#7 05-05-2008 16:21:24

jawas
Membre
Date d'inscription: 05-05-2008
Messages: 16
Site web

Re: [IceCast] Cherche script pour titre en cours.

ou met ont ladresse du stream le port et le point de montage ! exemple :  http://streaming.radionomy.com:8000/Mod … x-Souvenir

Hors ligne

 

#8 05-05-2008 22:05:13

Gentil Kiwi
Administrateur de Kiwis
Lieu: Vers Paris
Date d'inscription: 24-07-2006
Messages: 367
Site web

Re: [IceCast] Cherche script pour titre en cours.

Pour toi cela sera comme ca :

Code:

<?php
function connect_icecast($host, $port){
    $fp = @fsockopen($host, $port, $errno, $errstr, 3);
    
    if(!$fp){
        return false;
    } else {
        fputs($fp, 'GET /status2.xsl' . " HTTP/1.0\r\nUser-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:0.9.9)\r\n\r\n");
        
        $page = '';
        while(!feof($fp)){
            $page .= fread($fp, 1000);
        }
        fclose($fp);
        return $page;
    }
}

function kiwi_icecast($host, $port){
    $contenu = connect_icecast($host, $port);
    
    $tabChamps = array(3 => 'nom', 4 => 'auditeurs', 5 => 'max', 6 => 'titre');

    if ($contenu){
        if (preg_match_all('`([[:cntrl:]]/|//::///)([^,]*),([^,]*),([[:digit:]]*),([[:digit:]]*),([^/]*)`', $contenu, $resultat)){
    
        foreach($resultat[2] as $numPoint => $mountName)
            foreach ($tabChamps as $index => $champ)
                $tabIce[$mountName][$champ] = $resultat[$index][$numPoint];
    
        return $tabIce;
        } else {
            return false;
        }
    }
    else{
        return false;
    }
    
}

$tabIceCast = kiwi_icecast('streaming.radionomy.com', 8000);

if($tabIceCast){
    echo '<h1>Ma radio : ' . $tabIceCast['Modem-Radio-flux-Souvenir']['nom'] . '</h1>';
    echo 'Utilisateur(s) : ' . $tabIceCast['Modem-Radio-flux-Souvenir']['auditeurs'] . ' (max : ' . $tabIceCast['Modem-Radio-flux-Souvenir']['max'] . ')<br />';
    echo 'Titre en cours : ' . $tabIceCast['Modem-Radio-flux-Souvenir']['titre'];

    echo '<h2>Toutes les radios :</h2>';
    echo '<pre>';
    print_r($tabIceCast);
    echo '</pre>';
} else {
    echo 'Parsing impossible';
}
?>

Hors ligne

 

#9 05-05-2008 22:36:08

jawas
Membre
Date d'inscription: 05-05-2008
Messages: 16
Site web

Re: [IceCast] Cherche script pour titre en cours.

merci à toi
je voudrai savoir pourquoi ai je ce message

Parsing impossible

Hors ligne

 

#10 06-05-2008 18:49:01

Gentil Kiwi
Administrateur de Kiwis
Lieu: Vers Paris
Date d'inscription: 24-07-2006
Messages: 367
Site web

Re: [IceCast] Cherche script pour titre en cours.

Ton fournisseur executant php n'autorise peut être pas les connexions sortantes sur certains ports (Free par exemple)

essayes cette version plus bavarde :

Code:

<?php
function connect_icecast($host, $port){
    $fp = @fsockopen($host, $port, $errno, $errstr, 3);
    
    if(!$fp){
        echo 'Impossible de se connecter : "' . $errno . ' - ' . $errstr . '"<br />';
        return false;
    } else {
        fputs($fp, 'GET /status2.xsl' . " HTTP/1.0\r\nUser-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:0.9.9)\r\n\r\n");
        
        $page = '';
        while(!feof($fp)){
            $page .= fread($fp, 1000);
        }
        fclose($fp);
        return $page;
    }
}

function kiwi_icecast($host, $port){
    $contenu = connect_icecast($host, $port);
    
    $tabChamps = array(3 => 'nom', 4 => 'auditeurs', 5 => 'max', 6 => 'titre');

    if ($contenu){
        if (preg_match_all('`([[:cntrl:]]/|//::///)([^,]*),([^,]*),([[:digit:]]*),([[:digit:]]*),([^/]*)`', $contenu, $resultat)){
    
            foreach($resultat[2] as $numPoint => $mountName)
                foreach ($tabChamps as $index => $champ)
                    $tabIce[$mountName][$champ] = $resultat[$index][$numPoint];

            return $tabIce;
        } else {
            echo 'Pas de contenu !<br />';
            return false;
        }
    }
    else{
        return false;
    }
    
}

$tabIceCast = kiwi_icecast('streaming.radionomy.com', 7000);

if($tabIceCast){
    echo '<h1>Ma radio : ' . $tabIceCast['Modem-Radio-flux-Souvenir']['nom'] . '</h1>';
    echo 'Utilisateur(s) : ' . $tabIceCast['Modem-Radio-flux-Souvenir']['auditeurs'] . ' (max : ' . $tabIceCast['Modem-Radio-flux-Souvenir']['max'] . ')<br />';
    echo 'Titre en cours : ' . $tabIceCast['Modem-Radio-flux-Souvenir']['titre'];

    echo '<h2>Toutes les radios :</h2>';
    echo '<pre>';
    print_r($tabIceCast);
    echo '</pre>';
} else {
    echo 'Parsing impossible';
}
?>

Hors ligne

 

#11 06-05-2008 19:11:40

jawas
Membre
Date d'inscription: 05-05-2008
Messages: 16
Site web

Re: [IceCast] Cherche script pour titre en cours.

et maintenant  sur free

Impossible de se connecter : "0 - Success"
Parsing impossible

sinon cela fonctionne sur 1&1 mais trop d infos

voici que cela donne  http://seblesite.com/icecast.php  mais j'aimerai qe le titre 
merci a vous

Dernière modification par jawas (06-05-2008 19:12:05)

Hors ligne

 

#12 06-05-2008 21:23:46

Gentil Kiwi
Administrateur de Kiwis
Lieu: Vers Paris
Date d'inscription: 24-07-2006
Messages: 367
Site web

Re: [IceCast] Cherche script pour titre en cours.

tu ne dois pas trop connaitre le PHP toi ^^

Code:

if($tabIceCast){
    echo 'Titre en cours : ' . $tabIceCast['Modem-Radio-flux-Souvenir']['titre'];
}

Hors ligne

 

#13 06-05-2008 22:34:04

jawas
Membre
Date d'inscription: 05-05-2008
Messages: 16
Site web

Re: [IceCast] Cherche script pour titre en cours.

eu non

Hors ligne

 

#14 06-05-2008 23:02:49

jawas
Membre
Date d'inscription: 05-05-2008
Messages: 16
Site web

Re: [IceCast] Cherche script pour titre en cours.

en gros comment je peu faire pour faire defiler ce texte dans une autre page web

svp aider moi

merci

-----
up
-----
Personnes Ne Peut M Aider  Svp  Merci
-----
up
-----
good j'ai reussit en java script

Dernière modification par Gentil Kiwi (14-05-2008 01:04:49)

Hors ligne

 

Pied de page des forums

Propulsé par PunBB
© Copyright 2002–2005 Rickard Andersson
Traduction par punbb.fr