1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen

Shoutcast-Webinterface

Dieses Thema im Forum "Internetradio- und Heimstudio-Software" wurde erstellt von Basti4u2009, 12. September 2007.

Status des Themas:
Es sind keine weiteren Antworten möglich.
  1. Basti4u2009

    Basti4u2009 Benutzer

    Ich suche ein Schoutcast webinterface wo man den Stream(s) starten,stoppen, Restarten, und Autodj einstellen kann. Das müsste auch auf einem Win server laufen.
     
  2. Mr.BSE

    Mr.BSE Benutzer

    AW: Shoutcast-Webinterface

    Hi,
    also ein solches Inteface habe ich grundsätzlich schon, es ist jedoch auf linux basierend, sollte aber weniger das Prob sein es auf Windoof umzubauen.

    desweiteren kannst du ja mal nach SMI (shoutcast Managment Interface) googeln... irgend so eine sourceforget.xyz oder so... die letzte version von den die ist sowohl windows als auch Linux tauglich, jedoch habe ich beide versionen nicht wirklich zum laufen bekommen, erst nach vielen vielen Script betrachten und umschreiben lief dann mal bissel was. aber eben nicht wirklich alles.
    Wenn es dir nicht auf ein paar tage ankommt, dann gib sie mir, und ic hschau mal ob ich mein interface auf ein Windoof System umbauen kann.
    Sollten nur paar Pfade, rechte und Systems() sein.

    Lg Mr.BSE
     
  3. Binamaus

    Binamaus Benutzer

    AW: Shoutcast-Webinterface

    hallo ihr zwei beiden, und all die anderen.

    hier mal nen denkanstoss und hilfeanleitung für ein shoutcastinterface

    @Mr.BSE
    ich hoffe du haust das nicht einfach so raus, so wie es sich anhört wird er auch damit geld verdienen, ich mag solche leute net, die irgendwohin kommen, nach ner Fertigen lösung fragen und dann nen knappes danke udn das wars wenn überhaupt noch, man selbst haut sich tage und nächte um die ohren und dann kommt immer noch was nach, kannst das noch kannst das noch und das noch und das wär auch gut, achja und das soll es auch noch können...
    Laß dich nicht ausnutzen, deine zeit ist auch nicht umsonst.

    Wieso fangen die leute nich mal an selber was zu machen, nee es gibt immer dumme die das Fertige liefern, ist der weg des Geringsten wiederstandes oder?

    für alle andren die lern fähig und willig sind..
    im übrigen schon ein paar hundertmal in dieser oder ähnlicher form in diversen suchmaschinen gefunden... Mister Goggle und Co es gibt sogar fertige patentlösungen, gut oder nicht möchte ich nicht beurteilen.

    finger gespitzt und mal selbst was gemacht, statt immer nur andere...

    professionelle hilfe gibt es in diversen selfs und so...

    Radiomachen ist euer hobby, dann kümmert euch auch drum das ihr den rest den ihr braucht auch einfliesst in euer hobby. es soll ja alle bequem sein, STARTEN, STOPPEN RESTARTEN, AUTO-DJ vielleicht noch ein script was euren PC allein ans BETT fährt???

    Oder braucht jemand der gern Auto fährt als Hobby, kein Sprit, keine Wagenpflege usw.???




    Schritt 1.
    Erstelle auf deinem Server im documentenroot einen Ordner der möglichst lang und unsinnig ist
    z.Bsp.

    aks34234dkja4h7sdkjakjhakjskjdfdaszutr2364uhuhkjadha

    also in dieser form in etwa
    er ist recht schwer zu erraten anschließend schütze ihn noch mit Passwort und lege eine
    leere Index.html, index.php Datei dort ab.

    ggf. kannst du auch in der Index Datei einen Reload zur Stammseite einbauen. sollte also doch jemand dorthin gelangen, kommt er automatisch auf die Hauptseite

    das kann man ggf. so machen
    zur Index.html von der Hauptseite.
    sähe die index.html Seite in unserem Verzeichnis dann etwa so aus
    <HTML>
    <HEAD>
    <SCRIPT LANGUAGE=JAVASCRIPT>window.location.href='../index.html';</SCRIPT>
    </HEAD>
    <BODY>
    </BODY>
    </HTML>

    wenn die Hauptseite keine INDEX.HTML hat sondern eine INDEX.PHP dann einfach das HTML in PHP ändern.
    sollte soweit aber eigentlich klar sein.


    schritt 2.
    wir wollen 2 Streamserver haben und einen tester
    wir erstellen in unseren aks34234dkja4h7sdkjakjhakjskjdfdaszutr2364uhuhkjadha Ordner 3 weitere Ordner
    zum Beispiel

    dsl_stream DSL-Stream
    isdn_stream ISDN-Stream
    test_stream TEST-Stream

    in diese Ordner kopieren wir jeweils den Shoutcast, somit haben wir dann 3-mal den Shoutcast auf den Server.
    wir ändern in jedem Verzeichnis die sc_serv Datei in einen anderen Namen, muss sein damit wir später den SC am Namen unterscheiden und Stoppen können.
    in unserem Beispiel könnten es dann so sein
    dsl -stream -> aus sc_serv wird dsl_serv
    isdn-stream -> aus sc_serv wird isdn_serv
    test-stream -> aus sc_serv wird tester_serv
    nun passen wir noch die configs jeweils an
    die wichtigsten Parameter die geändert werden sollten sind folgende

    MaxUser=30 <tragt dort eure MAXIMAL zugelassenen Hörer ein, Übertreibt es aber net, denkt realistisch Serverleistung, Anbindung etc.
    AdminPassword=xyzabcd123 <unbedingt ändern sollte vor AdminPasswort noch ; sein bitte das ; wegmachen
    Password=radiobse4711 <auch unbedingt ein eigenes Setzen
    PortBase=8020 <bitte freie Ports nutzen die sonst nicht genutzt werden, denkt an verschiene Server Protokolle: 8443, 4663, 10000 80, 21, 25 usw. sind meistens schon anders benutzt
    LogFile=sc_serv.log <dieses logfile bitte anpassen an den Stremnamen DSL_serv.log,isdn_serv.log, tester_serv.log oder ähnlich
    den Rest solltet ihr so lassen wie vorgegeben

    somit haben wir jetzt folgende verzeichnissstrucktur + dateien


    Hauptverzeichnis
    aks34234dkja4h7sdkjakjhakjskjdfdaszutr2364uhuhkjadha/
    dsl_stream/
    dsl_serv
    sc_serv.conf
    isdn_stream/
    isdn_serv
    sc_serv.conf
    test_stream/
    tester_serv
    sc_serv.conf


    das war es soweit schon, denkt noch an die Rechtevergabe
    chmod 755 sollte genügen

    nun kommen wir zu unseren eigentlichen inter-(net)-face

    um es für lern und Studienzwecken einfach zu halten, erstellen wir uns für jeden befehl eine eigene PHP Datei

    1. erstelle in deinem ADMIN Ordner dort wo du später den SC starten stoppen oder Restarten möchtest eine Datei namens

    sc_stop.php
    in dieser kopierst du folgende Zeilen

    <?
    $servername = $_REQUEST['name'];
    $pass = $_REQUEST['pass'];
    $pruefung = @file("aks34234dkja4h7sdkjakjhakjskjdfdaszutr2364uhuhkjadha/".$servername."_stream/sc_serv.conf");
    while (list ($line_num, $line) = @each ($pruefung))
    {
    $ident = explode("=",$line);
    if($ident[0] == "AdminPassword")
    {
    $ident[1]=md5(trim($ident[1]));
    if ($pass==$ident[1])
    {
    system("killall -9 '$servername'_serv");
    echo "gestoppt";
    }
    }
    }
    ?>



    Um später einen Shoutcast zu stoppen müssen wir die STOP.PHP Datei aufrufen
    übergeben wird der NAME (im Beispiel also stop.php?name=dsl oder stop.php?name=isdn oder stop.php?name=test)

    das allein wäre aber sehr unsicher, darum übertragen wir noch das ADMINPASSWORT

    allerdings muss das Passwort schon md5(kodiert)

    im Beispiel oben das Adminpasswort xyzabcd123 wäre also folgendes zu übergeben.

    stop.php?name=test&pass=bb138e2830c139f2757f442cc9423016

    wenn alles richtig war, sollte der Shoutcastserver TEST gestoppt werden. wenn wir ihn zuvor doch gestartet hätten.

    dazu kommen wir jetzt

    im Grunde fast das gleiche wie oben
    start.php

    <?
    $servername = $_REQUEST['name'];
    $pass = $_REQUEST['pass'];
    $pruefung = @file("aks34234dkja4h7sdkjakjhakjskjdfdaszutr2364uhuhkjadha/".$servername."_stream/sc_serv.conf");
    while (list ($line_num, $line) = @each ($pruefung))
    {
    $ident = explode("=",$line);
    if($ident[0] == "AdminPassword")
    {
    $ident[1]=md5(trim($ident[1]));
    if ($pass==$ident[1])
    {
    system("aks34234dkja4h7sdkjakjhakjskjdfdaszutr2364uhuhkjadha/".$servername."_stream/".$servername.".sh");
    echo "gestartet";
    }
    }
    }
    ?>


    Halt Moment mal, wird der eine oder andere sagen, der aufgepasst hat, da stimmt was nicht mit den Pfaden bzw. Dateinamen.
    Stimmt, da stimmt was nicht und was???
    Genau, das Starten des Shoutcast weißt auf eine $servername.sh Datei, aber die gibt es doch gar nicht in den Verzeichnissen.
    ich sage nur... RUHE ist des MENSCHen heilig, nur verrückte haben es eilig.

    diese Datei erstellen wir noch in ruhe.....

    der Aufruf zum starten würde dann wie folgt sein.

    start.php?name=test&bb138e2830c139f2757f442cc9423016

    geht aber auch noch nicht... solange wir die .sh Dateien nicht erstellt haben.

    und dazu kommen wir jetzt

    in jedem Ordner wo wir unsere Shoutcast's drin haben müssen wir eine Datei erstellen
    also eine dsl.sh
    eine isdn.sh
    und eine test.sh
    in allen steht fast das gleiche drin

    ganz zum Anfang muss folgendes stehen
    #!/bin/bash


    bzw. der Pfad zu euren bash Interpreten, sollte aber meistens so gehen. hängt aber von eurem System ab.

    darunter kommt eine einzige Zeile die unter umständen recht lang wird

    ausgehend von eurem ROOT Verzeichnis auf dem Server bis zum Verzeichnis des/der Shoutcastserver der PFAD

    bei mir wäre das zum Beispiel für den DSL stream

    /srv/www/vhost/Domainname.de/httpdocs/aks34234dkja4h7sdkjakjhakjskjdfdaszutr2364uhuhkjadha/dsl_stream/

    wie man erkennen kann ist dort wieder unser chaotisches Verzeichnis und das DSL_STREAM Verzeichnis
    und direkt dazu noch der Dateiname unseres DSL_SHOUTCAST_Servers den wir oben in dsl_serv umbenannt hatten

    somit sieht der erste teil wie folgt aus
    /srv/www/vhost/Domainname.de/httpdocs/aks34234dkja4h7sdkjakjhakjskjdfdaszutr2364uhuhkjadha/dsl_stream/dsl_serv

    getrennt von einem Leerzeichen folgt der Pfad nochmals und hinten dran der Dateiname für die Configdatei des DSL_servers

    die wir getrost sc_serv.conf belassen hatten

    somit haben wir folgende Zeile

    /srv/www/vhost/Domainname.de/httpdocs/aks34234dkja4h7sdkjakjhakjskjdfdaszutr2364uhuhkjadha/dsl_stream/dsl_serv /srv/www/vhost/Domainname.de/httpdocs/aks34234dkja4h7sdkjakjhakjskjdfdaszutr2364uhuhkjadha/dsl_stream/sc_serv.conf

    und zu guter letzt noch mal ein Leerzeichen und folgendes hinten dran "> /dev/null &" ohne die Gänsefüße

    also sieht die .sh Datei für den dsl_stream wie folgt aus

    #!/bin/bash
    /srv/www/vhost/Domainname.de/httpdocs/aks34234dkja4h7sdkjakjhakjskjdfdaszutr2364uhuhkjadha/dsl_stream/dsl_serv /srv/www/vhost/Domainname.de/httpdocs/aks34234dkja4h7sdkjakjhakjskjdfdaszutr2364uhuhkjadha/dsl_stream/sc_serv.conf > /dev/null &

    wenn das alles richtig gemacht wurde, dann lässt sich der erste Server schon mal starten und stoppen und das per Web.

    nun erstellen wir noch im isdn_stream Ordner und test_stream Ordner die Datei passenden .sh Datei

    also isdn.sh und test.sh... kopieren den pfad der einfachheit halber aus der dsl.sh Datei und ändern nur noch den Namen
    dsl in isdn bzw in test.

    alle .sh Dateien müssen nun noch das recht bekommen ausgeführt zu werden, (755)

    und das war es dann eigentlich schon.

    struktur abschließend
    aks34234dkja4h7sdkjakjhakjskjdfdaszutr2364uhuhkjadha/
    dsl_stream/
    dsl_serv
    sc_serv.conf
    dsl.sh
    isdn_stream/
    isdn_serv
    sc_serv.conf
    isdn.sh
    test_stream/
    tester_serv
    sc_serv.conf
    test.sh



    jetzt sollten sich alle 3 Server starten und stoppen lassen
    start.php?name=dsl&pass=bb138e2830c139f2757f442cc9423016
    stop.php?name=dsl&pass=bb138e2830c139f2757f442cc9423016

    start.php?name=isdn&pass=bb138e2830c139f2757f442cc9423016
    stop.php?name=isdn&pass=bb138e2830c139f2757f442cc9423016

    start.php?name=test&pass=bb138e2830c139f2757f442cc9423016
    stop.php?name=test&pass=bb138e2830c139f2757f442cc9423016


    ich hoffe, dass es vielen von euch weitergeholfen hat.

    bitt denkt dran das diese Lösung nicht das Non Plus ultra ist, allein aus dem Sicherheitsaspekt heraus, da alles letztlich direkt im Webordner liegt.

    es soll auch einfach nur bissel zum basteln anregen, und keine Komplettlösung darstellen.

    und nun viel Erfolg

    beim selber basteln
     
  4. Pegasus

    Pegasus Benutzer

    AW: Shoutcast-Webinterface

    Also solche Tipps sollten unter Strafe gestellt werden. Und dafür hast du dich extra angemeldet? Meiner Meinung nach solltest du niemanden Tipps im Umgang mit Server geben, denn dir fehlen Grundlagen und gefährdest dadurch jeden, der deine Tipps umsetzt.
     
  5. Makkus

    Makkus Benutzer

    AW: Shoutcast-Webinterface

    Weiss nicht was Du hast?

    Was war an
    missverständlich? :D
     
  6. Pegasus

    Pegasus Benutzer

    AW: Shoutcast-Webinterface

    Naja, dann geb ich dir nen Rat, wie du dein Auto schneller machen kannst.
    Schraub Bremsscheiben, Bremszylinder, Bremskraftverstärker, Scheimwerfer, Hupe, Sicherheitsgurte usw. raus. Durch da geringere Gewicht sparst du sogar noch Benzin und wer bremst verliert sowieso.

    sonst noch Fragen?
     
  7. Basti4u2009

    Basti4u2009 Benutzer

    AW: Shoutcast-Webinterface

    Da kann ich dich berühigen Binamaus. Mit den Shoutcast servern verdiene ich kein Geld. Da eine Gute Freundin von mir ein Internetradio hat. Habe ich bei mir auf dem Server zwei Shoutcast server laufen. Bevor die sich irgendeinen von einer Hinterhoffirma mietet.
     
  8. Basti4u2009

    Basti4u2009 Benutzer

    AW: Shoutcast-Webinterface

    Mr. Base habe dieses shoutcast Managment Interface gefunden. Sobald ich meinen neuen Server eingerichtet habe werde ich es mal testen. Hast du von deinem Interface ein oder Zwei Screenshots das ich es mir mal anschauen kann.
     
  9. derKleineLucas

    derKleineLucas Benutzer

    AW: Shoutcast-Webinterface

    Anstatt

    soetwas, kannst du auch ein einfaches Batchskript schreiben was du per blick auf einen Link startest. Das Batchskript macht pinzipiell das gleiche... jenachdem wie du es programmierst.

    Vorteil bei Batchskripten, du hast die Moeglichkeit diese auch als Tasklaufen zu lassen sodass du fest sagen kannst "starte mir den Streamserver alle 14 Tage einmal neu".

    Dies kannst du ebenfalls auch ueber PHP machen und dann nen Cronjob einrichten.. einfacher find ich persoenlich die Batchskripte..
     
  10. seekwhencer

    seekwhencer Gesperrter Benutzer

    AW: Shoutcast-Webinterface

    Kategorisch empfehle ich, niemals PHP dem Server direkt Befehle geben zu dürfen.

    system("killall -9 '$servername'_serv"); ist soetwas.

    Ich empfehle Job-Files, die von PHP erzeugt und bspw. via Cronjob verarbeitet werden. Dabei hast du zwar kein AdHoc-Ergebis - doch das ist zu verschmerzen. Cronjobs kannst du bis zur Sekunde treiben. Wenn du also willst, dass sofort etwas passiert, ist auch das möglich.

    Gruß
    Seek
     

Status des Themas:
Es sind keine weiteren Antworten möglich.

Diese Seite empfehlen