PHP Kick script

PHP, HTML, Joomla, WordPress, etc..
Plaats reactie
Radio Europe

PHP Kick script

Ongelezen bericht door Radio Europe »

Hallo allen,

Regelmatig zie ik de vraag over het kicken van de stream zodat een andere DJ het kan overnemen.
Het probleem met het kicken van de stream via een PAL-script is dat de DJ dan ook over de stream gegevens beschikt (wachtwoord)
Ik heb hier een php script voor geschreven...de code is met wat html wat rommelig in aanzien, maar het werkt goed genoeg om dit met jullie te delen.
Ook ontvang je een email met de melding welke IP er heeft gekicked, dit voor eventuele controles.
Uiteraard moet je het script via je text editor even aanpassen (wachtwoorden, email enz)
Hopelijk kan je er iets mee.

Nico
kick.zip
Je hebt niet voldoende permissies om de bijlagen van dit bericht te bekijken.
drOhimself

Re: PHP Kick script

Ongelezen bericht door drOhimself »

Handig !
Bedankt voor het delen.
Dit werkt alleen voor ShoutCast v1.x streams ?
Radio Europe

Re: PHP Kick script

Ongelezen bericht door Radio Europe »

Zover ik weet zal het ook met v2 moeten werken.
Enkel de url in het script wel aanpassen.
iRuud

Re: PHP Kick script

Ongelezen bericht door iRuud »

Met meerdere DJ's werken en dan kicken van de vorige van de stream?

Kun je beter een ICECAST server opzetten, alle DJ's een eigen poort geven en SAM het programma vanaf de ICECAST serve laten halen. Is mooier en blijft de originele soundprocessing behouden
drOhimself

Re: PHP Kick script

Ongelezen bericht door drOhimself »

Dat is een mooie oplossing iRuud !
Heb je daar wat meer info over misschien ?
Denk dat een hoop bezoekers daar wat aan hebben/van kunnen leren !
Atletico

Re: PHP Kick script

Ongelezen bericht door Atletico »

Hoi allen,

Heb dit script even bekeken en op zich is het een goed idee. Waar mij het om gaat is dat b.v. een nieuwe dj absoluut niet de codes van shoutcast krijgt. Stel je voor dat het niks wordt, dan hebben ze wel de login gegevens. Als zo iemand kwaadwillend is kun je bij alle dj's weer de code veranderen. Rechtermuistoets werkt bij dit script niet, maar eenmaal ingelogd kun je met ctrl-u zo de codes opzoeken. Ik schiet er dus niks mee op. Wel jammer want zoiets zocht ik net ;)

Grtz, Peter
Gebruikersavatar
Wout
Beheerder
Berichten: 3522
Lid geworden op: 03 dec 2007, 14:17
SAM-versie: 2019.3
Database: MariaDB
Windows: 11
Locatie: West-Brabant
Contacteer:

Re: PHP Kick script

Ongelezen bericht door Wout »

Hierbij mijn poging voor een afgeschermde pagina.
Alleen gebruiker met de toegestaande IP-adres kan gebruik maken van de kick-script.
Voorbeeld vind je hier http://woutfm.nl/test/kick.php

Code: Selecteer alles

<?php
    //hieronder vul je de gewenste IP-adressen in die toegang mogen hebben
    $ipadressen = array(
        '127.0.0.1', 
        '192.168.1.1',
        '192.168.2.1'
    ) ;

    //hieronder verander je de juiste gegevens van je shoutcast
    $url = 'http://admin:wachtwoord@ipadres:poort/admin.cgi?mode=kicksrc' ;         

    if (isset($_POST['verstuur'])) 
    {        
        $ch = curl_init() ;
        curl_setopt($ch, CURLOPT_URL, $url) ;
        curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US; rv:1.9.0.11) Gecko/2009060215 Firefox/3.0.11 (.NET CLR 3.5.30729)') ;
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1) ; 
        curl_exec($ch) ;
        curl_close($ch) ;    
    }    

?>
<!DOCTYPE html>
<html>
    <head>
        <title>Kick me!</title>
        <link rel="stylesheet" href="http://yui.yahooapis.com/pure/0.5.0/pure-min.css">
        <link href="http://maxcdn.bootstrapcdn.com/font-awesome/4.1.0/css/font-awesome.min.css" rel="stylesheet">
        <meta name="viewport" content="width=device-width, initial-scale=1">
    </head>
    <body>

    <div class="pure-g">
        <div class="pure-u-1-3"></div>
        <div class="pure-u-1-3">
            <h1>Kick the stream!</h1> 
            <form class="pure-form pure-form-stacked" method='post' >   
                <fieldset>
                    <legend>Jouw IP is <?php echo $_SERVER['REMOTE_ADDR']; ?></legend>
                    <?php 
                    if (in_array($_SERVER['REMOTE_ADDR'], $ipadressen))
                    {
                        echo '<button type="submit" class="pure-button pure-button-primary" name="verstuur" ><i class="fa fa-thumbs-o-up"></i>&nbsp;  Kick me!</button>' ; 
                    }
                    else 
                    {
                        echo '<button class="pure-button pure-button-disabled"><i class="fa fa-exclamation-triangle"></i>&nbsp;  Geen rechten!</button>' ;
                    }
                    ?>    
                </fieldset>
            </form>
        </div>
        <div class="pure-u-1-3"></div>
    </div>
    </body>
</html>
Afbeelding
Atletico

Re: PHP Kick script

Ongelezen bericht door Atletico »

Thanks Wout,

Deze gaan we ff proberen. Ziet er op zich heel goed uit en codes zijn er niet in terug te vinden. Kan alleen momenteel het kicken niet testen omdat er iemand live zit, maar dat probeer ik vannacht nog wel ff uit :D

Grtz, Peter
Atletico

Re: PHP Kick script

Ongelezen bericht door Atletico »

@Wout,

Dit werkt perfect! Thanks man [smilie=good.gif]

Grtz, Peter
Atletico

Re: PHP Kick script

Ongelezen bericht door Atletico »

@Wout,

Zoals gezegd werkt dit script perfect voor de mensen die gewend zijn zo te kicken. Is er wellicht ook nog een mogelijkheid deze pagina middels een PAL script uit te voeren (zoals het kickscript wat elders in dit forum te vinden is)? Dus dat je gewoon het PAL script kunt runnen en de pagina op de achtergrond wordt uitgevoerd en ook daadwerkelijk kickt? Dan zou niemand dus meer gegevens nodig hebben.

Grtz, Peter
Gebruikersavatar
Wout
Beheerder
Berichten: 3522
Lid geworden op: 03 dec 2007, 14:17
SAM-versie: 2019.3
Database: MariaDB
Windows: 11
Locatie: West-Brabant
Contacteer:

Re: PHP Kick script

Ongelezen bericht door Wout »

Ja hoor, geen probleem.
Het werkt hetzelfde als de vorige.
Je heb een website waar je mee kan kicken of een directe URL om te kicken.
http://woutfm.nl/test/kick.php
en de onderstaande kan je gebruiken in je PAL
http://woutfm.nl/test/kick.php?verstuur

Je geeft toegang door de IP-adres van de ander toe te voegen.

Code: Selecteer alles

<?php
    //hieronder vul je de gewenste IP-adressen in die toegang mogen hebben
    $ipadressen = array(
                                    '127.0.0.1', 
                                    '192.168.1.1',
                                    '192.168.2.1'
                                    ) ;

    //hieronder verander je de juiste gegevens van je shoutcast
    $url = 'http://admin:wachtwoord@ipadres:poort/admin.cgi?mode=kicksrc' ;         

    $ip = $_SERVER['REMOTE_ADDR'] ;
    
    if ( (isset($_GET['verstuur'])) || (isset($_POST['verstuur'])) )
    {        
        if (in_array($ip, $ipadressen))
        {
            $ch = curl_init() ;
            curl_setopt($ch, CURLOPT_URL, $url) ;
            curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US; rv:1.9.0.11) Gecko/2009060215 Firefox/3.0.11 (.NET CLR 3.5.30729)') ;
            curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1) ; 
            curl_exec($ch) ;
            curl_close($ch) ; 
        }
    }    
    
?>
<!DOCTYPE html>
<html>
    <head>
        <title>Kick me!</title>
        
        <link rel="stylesheet" href="http://yui.yahooapis.com/pure/0.5.0/pure-min.css">
        <link href="http://maxcdn.bootstrapcdn.com/font-awesome/4.1.0/css/font-awesome.min.css" rel="stylesheet">
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <!--[if lte IE 8]>
            <link rel="stylesheet" href="http://yui.yahooapis.com/pure/0.6.0/grids-responsive-old-ie-min.css">
        <![endif]-->
        <!--[if gt IE 8]><!-->
            <link rel="stylesheet" href="http://yui.yahooapis.com/pure/0.6.0/grids-responsive-min.css">
        <!--<![endif]-->        

    </head>
    <body>

        <div class="pure-g">
            <div class="pure-u-1 pure-u-md-1-3"></div>
            <div class="pure-u-1 pure-u-md-1-3">
                <h1>Kick the stream!</h1> 
                <form class="pure-form pure-form-stacked" method='post' >   
                    <fieldset>
                    <legend>Jouw IP is 
                    <?php 
                        echo $ip ; 
                        if (in_array($ip, $ipadressen))
                        {                        
                            echo '&nbsp;  <i class="fa fa-check"></i>' ;                            
                        }
                        else 
                        {
                            echo '&nbsp;  <i class="fa fa-times"></i>' ;
                        }
                    ?>
                    </legend>
                    <?php 
                    if (in_array($ip, $ipadressen))
                    {
                        echo '<button type="submit" class="pure-button pure-button-primary" name="verstuur" ><i class="fa fa-thumbs-o-up"></i>&nbsp;  Kick me!</button>' ; 
                    }
                    else 
                    {
                        echo '<button class="pure-button pure-button-disabled"><i class="fa fa-exclamation-triangle"></i>&nbsp; Geen rechten!</button>' ;
                    }
                    ?>    
                    </fieldset>
                    </form>
            </div>
            <div class="pure-u-1 pure-u-md-1-3"></div>
        </div>
    </body>
</html>
Afbeelding
Atletico

Re: PHP Kick script

Ongelezen bericht door Atletico »

Yes! Dit is exact wat ik altijd al wilde. Dit werkt zowel voor de mensen die via een pagina kicken en ook voor de mensen die kicken via een PAL (waaronder ikzelf). Net getest op beide manieren en werkt uit de kunst [smilie=yahoo.gif] En het allerbelangrijkste. Nergens geen gegevens terug te vinden.

Thanks Wout, je bent een topper [smilie=good.gif]

Grtz, Peter
calvinn12

Re: PHP Kick script

Ongelezen bericht door calvinn12 »

werkt die op shoutcast v2
Dirk65

Re: PHP Kick script

Ongelezen bericht door Dirk65 »

Beste Forum Leden

Ik heb die php script van wout om te kicken.
Die werkt ook perfect om 1 stream te kicken.
Maar ik wil graag 2 streams kunnen kicken hoe werkt dat eigenlijk.
Ik heb deze script voor gebuik zal hem met code mee sturen.

Code: Selecteer alles

<?php
    //hieronder vul je de gewenste IP-adressen in die toegang mogen hebben
    $ipadressen = array(
                                    '127.0.0.1', 
                                    '192.168.1.1',
                                    '192.168.2.1'
                                    ) ;

    //hieronder verander je de juiste gegevens van je shoutcast
    $url = 'http://admin:wachtwoord@ipadres:poort/admin.cgi?mode=kicksrc' ;         

    $ip = $_SERVER['REMOTE_ADDR'] ;
    
    if ( (isset($_GET['verstuur'])) || (isset($_POST['verstuur'])) )
    {        
        if (in_array($ip, $ipadressen))
        {
            $ch = curl_init() ;
            curl_setopt($ch, CURLOPT_URL, $url) ;
            curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US; rv:1.9.0.11) Gecko/2009060215 Firefox/3.0.11 (.NET CLR 3.5.30729)') ;
            curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1) ; 
            curl_exec($ch) ;
            curl_close($ch) ; 
        }
    }    
    
?>
<!DOCTYPE html>
<html>
    <head>
        <title>Kick me!</title>
        
        <link rel="stylesheet" href="http://yui.yahooapis.com/pure/0.5.0/pure-min.css">
        <link href="http://maxcdn.bootstrapcdn.com/font-awesome/4.1.0/css/font-awesome.min.css" rel="stylesheet">
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <!--[if lte IE 8]>
            <link rel="stylesheet" href="http://yui.yahooapis.com/pure/0.6.0/grids-responsive-old-ie-min.css">
        <![endif]-->
        <!--[if gt IE 8]><!-->
            <link rel="stylesheet" href="http://yui.yahooapis.com/pure/0.6.0/grids-responsive-min.css">
        <!--<![endif]-->        

    </head>
    <body>

        <div class="pure-g">
            <div class="pure-u-1 pure-u-md-1-3"></div>
            <div class="pure-u-1 pure-u-md-1-3">
                <h1>Kick the stream!</h1> 
                <form class="pure-form pure-form-stacked" method='post' >   
                    <fieldset>
                    <legend>Jouw IP is 
                    <?php 
                        echo $ip ; 
                        if (in_array($ip, $ipadressen))
                        {                        
                            echo '&nbsp;  <i class="fa fa-check"></i>' ;                            
                        }
                        else 
                        {
                            echo '&nbsp;  <i class="fa fa-times"></i>' ;
                        }
                    ?>
                    </legend>
                    <?php 
                    if (in_array($ip, $ipadressen))
                    {
                        echo '<button type="submit" class="pure-button pure-button-primary" name="verstuur" ><i class="fa fa-thumbs-o-up"></i>&nbsp;  Kick me!</button>' ; 
                    }
                    else 
                    {
                        echo '<button class="pure-button pure-button-disabled"><i class="fa fa-exclamation-triangle"></i>&nbsp; Geen rechten!</button>' ;
                    }
                    ?>    
                    </fieldset>
                    </form>
            </div>
            <div class="pure-u-1 pure-u-md-1-3"></div>
        </div>
    </body>
</html>
Wil graag weten hoe het dan moet voor de 2e stream erbij in te zetten.

Vriendelijke Groeten Dirk65
Dirk65

Re: PHP Kick script

Ongelezen bericht door Dirk65 »

Beste @iruud

Het gaat erom dat de eerste live dj kan gaan kicken.
En dat is dan de nonstop die draaid.
En niet de live dj's die nemen van elkaar gewoon over.
En om dan 2 streams te laten kicken is 1 voor radio stream en de 2e stream is voor mobiel telefoons.
Vandaar dat ik ook de vraag stelde hoe die script van wout kan maken voor 2 streams.
Ik heb nu voor 1 stream en dat werkt prima die kunnen ze kicken maar de 2e niet.
Dus hopelijk is die van wout zo te kunnen maken voor 2 streams dus.

Vriendelijke Groeten Dirk65
Dirk65

Re: PHP Kick script

Ongelezen bericht door Dirk65 »

Beste Leden

Wie kan mij vertellen dat die kick stream.
Die radio Europe hier in de forum heeft geplaatst.
Niet de stream kickt voor zowel v1 en v2.
We hebben alles aangepast maar krijg het kicken niet werkend.
Heeft iemand een uitleg hoe dat kan.

Vriendelijke Groeten Dirk65
sjaaakie

Re: PHP Kick script

Ongelezen bericht door sjaaakie »

Weet iemand wat ik verkeerd doe dit script ik krijg het niet werkend.

Code: Selecteer alles

<?php
    //hieronder vul je de gewenste IP-adressen in die toegang mogen hebben
    $ipadressen = array(
    '82.72.69.115',
    '84.84.59.66',
    ) ;

    //hieronder verander je de juiste gegevens van je shoutcast
    $url = 'http://admin:xxxxxxxxxxx@server-51.stream-server.nl:8348/admin.cgi?mode=kicksrc' ;         

    if (isset($_POST['verstuur'])) 
    {        
        $ch = curl_init() ;
        curl_setopt($ch, CURLOPT_URL, $url) ;
        curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US; rv:1.9.0.11) Gecko/2009060215 Firefox/3.0.11 (.NET CLR 3.5.30729)') ;
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1) ; 
        curl_exec($ch) ;
        curl_close($ch) ;    
    }    

?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
    <head>
        <title>Kick me!</title>
        <link rel="stylesheet" href="http://yui.yahooapis.com/pure/0.5.0/pure-min.css">
        <link href="http://maxcdn.bootstrapcdn.com/font-awesome/4.1.0/css/font-awesome.min.css" rel="stylesheet">
        <meta name="viewport" content="width=device-width, initial-scale=1">
    </head>
    <body>

    <div class="pure-g">
        <div class="pure-u-1-3"></div>
        <div class="pure-u-1-3">
            <h1>Kick the stream!</h1> 
            <form class="pure-form pure-form-stacked" method='post' >   
                <fieldset>
                    <legend>Jouw IP is <?php echo $_SERVER['REMOTE_ADDR']; ?></legend>
                    <?php 
                    if (in_array($_SERVER['REMOTE_ADDR'], $ipadressen))
                    {
                        echo '<button type="submit" class="pure-button pure-button-primary" name="verstuur" ><i class="fa fa-thumbs-o-up"></i>&nbsp;  Kick me!</button>' ; 
                    }
                    else 
                    {
                        echo '<button class="pure-button pure-button-disabled"><i class="fa fa-exclamation-triangle"></i>&nbsp;  Geen rechten!</button>' ;
                    }
                    ?>    
                </fieldset>
            </form>
        </div>
        <div class="pure-u-1-3"></div>
    </div>
    </body>
</html>
Gebruikersavatar
Wout
Beheerder
Berichten: 3522
Lid geworden op: 03 dec 2007, 14:17
SAM-versie: 2019.3
Database: MariaDB
Windows: 11
Locatie: West-Brabant
Contacteer:

Re: PHP Kick script

Ongelezen bericht door Wout »

sjaaakie schreef: 12 jun 2017, 16:31 Weet iemand wat ik verkeerd doe dit script ik krijg het niet werkend.

Code: Selecteer alles

<?php
    //hieronder vul je de gewenste IP-adressen in die toegang mogen hebben
    $ipadressen = array(
    '82.72.69.115',
    '84.84.59.66',
    ) ;
Je dient de komma te verwijderen bij '84.84.59.66',.
Afbeelding
Plaats reactie
  • Vergelijkbare Onderwerpen
    Reacties
    Weergaves
    Laatste bericht