Shoutcast Streamanzeige

Du suchst einen bestimmten Mod, weißt aber nicht genau wo bzw. ob er überhaupt existiert? Wenn dir dieser Artikel nicht weiterhilft, kannst du hier den von dir gewünschten/gesuchten Mod beschreiben ...
Falls ein Mod-Autor eine der Anfragen hier aufnimmt, um einen neuen Mod zu entwickeln, geht's in [3.0.x] Mods in Entwicklung weiter.
Forumsregeln
phpBB 3.0 hat das Ende seiner Lebenszeit überschritten
phpBB 3.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 3.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf die neuste phpBB-Version, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Antworten
Benutzeravatar
fishtown
Mitglied
Beiträge: 77
Registriert: 04.01.2009 13:19

Shoutcast Streamanzeige

Beitrag von fishtown »

Hallo,
ich habe eine Shoutcaststreamanzeige nach meinen Bedürfnissen erweitert. Die kann ich nun als php-Datei in mein Template einfügen, und sie zeigt mir an ob und wer sendet.
Nun würde ich das ganze aber gern als Mod umstellen, damit ich die benötigten Eingaben direkt im Adminbereich machen kann. Ausserdem müss ich dann kein php mehr im Style freigeben. Aber mit der Moderstellung habe ich keinerlei Erfahrung. Darum wollte ich hier mal höflich anfragen, ob mir jemand dabei helfen kann. Eventuell haben ja auch andere Interesse an diesem Mod.

Hier mal der Code meiner php-Datei:

Code: Alles auswählen

<?php
## shoutcasthack by bikky on ##
## Erweitert by Fishtown ##

## Serverkonfiguration ##
## ------------------- ##
## $server = Server-IP ##
## $port = Port des Videostreams ##
## $port1 = Port des Audiostreams ##
$server = "xxx.xxx.xxx.xxx"; //hier die Server-IP eintragen
$port = 8000; //hier den Port fuer Server 1 eintragen
$port1 = 8001; //hier den Port fuer Server2 eintragen

## Hier nichts aendern ##
$fp = @fsockopen($server, $port, $errno, $errstr, 30);
$fp1 = @fsockopen($server, $port1, $errno, $errstr, 30);

## Abfrage ob Videostream Online ist ##
if ($fp) {
fputs($fp, "GET /7.html HTTP/1.0\r\nUser-Agent: XML Getter (Mozilla Compatible)\r\n\r\n");
while(!feof($fp))
$page .= fgets($fp, 1000);
fclose($fp);
$page = ereg_replace(".*<body>", "", $page);
$page = ereg_replace("</body>.*", ",", $page);
$numbers = explode(",", $page);
$shoutcast_currentlisteners = $numbers[0]; //variable ueber die aktuelle anzahl der zuhoerer
$connected = $numbers[1]; //variable zum anzeigen ob ein sender verbunden sind
if($connected == 1) {
$radio_status = 1; //variable zum anzeigen ob radio an ist oder nicht
$wordconnected = "yes"; //zusaetzliche variable die ich brauchte
}
else
$wordconnected = "no"; //zusaetzliche variable die ich brauchte
$shoutcast_peaklisteners = $numbers[2]; //variable die die anzahl der peaks angiebt
$shoutcast_maxlisteners = $numbers[3]; //variable ueber die maximal moegliche anzahl der zuhoerer
$shoutcast_reportedlisteners = $numbers[4]; //
$shoutcast_bitrate = $numbers[5]; //bitrate
$shoutcast_cursong = $numbers[6]; //aktueller song
$shoutcast_curbwidth = $shoutcast_bitrate * $shoutcast_currentlisteners; //gesamtbandbreite
$shoutcast_peakbwidth = $shoutcast_bitrate * $shoutcast_peaklisteners; //gesamtpeakbandbreite
}
## Abfrage ob Audiostream Online ist ##
if ($fp1) {
fputs($fp1, "GET /7.html HTTP/1.0\r\nUser-Agent: XML Getter (Mozilla Compatible)\r\n\r\n");
while(!feof($fp1))
$page .= fgets($fp1, 1000);
fclose($fp1);
$page = ereg_replace(".*<body>", "", $page);
$page = ereg_replace("</body>.*", ",", $page);
$numbers = explode(",", $page);
$shoutcast_currentlisteners1 = $numbers[0]; //variable ueber die aktuelle anzahl der zuhoerer
$connected = $numbers[1]; //variable zum anzeigen ob ein sender verbunden sind
if($connected == 1) {
$radio_status1 = 1; //variable zum anzeigen ob radio an ist oder nicht
$wordconnected1 = "yes"; //zusaetzliche variable die ich brauchte
$shoutcast_peaklisteners1 = $numbers[2]; //variable die die anzahl der peaks angiebt
$shoutcast_maxlisteners1 = $numbers[3]; //variable ueber die maximal moegliche anzahl der zuhoerer
}
else
$wordconnected1 = "no"; //zusaetzliche variable die ich brauchte
}

## Ab hier die Bilder der Modis anpassen ##
## ===================================== ##
## Jeder Modi eine Zeile. Folgende Daten anpassen: ##
## elseif(strpos($shoutcast_cursong,"MODINAME")!==false) $modipic = '<img src=http://www.URL.de/gallery/image.php?album_id=1&image_id=BILD-ID_im_Album></img>'; ##
## MODINAME = Der Name den der Modi uebertraegt ##
## BILD-ID_im_Album = Die ID des Modibildes in der Galerie. Bild MUSS im Album 'TEAM' sein. ##
if ($radio_status == 1) {
	$rs1status = '<b><a href="http://xxx.xxx.xxx.xxx:8000/listen.pls" target="_blank"><img src="video.gif" align="middle"><font color="green">   Online</font> </img></a></b>';
	$rs1statuspic = '<img src=http://www.URL.de/onlinepic.gif></img>';
	$rs1song = $shoutcast_cursong;
	$rs1listener = 'Zuhörer:' . $shoutcast_currentlisteners . "/" . $shoutcast_maxlisteners;
	$rs1add = '<font color="black"><b>Telefon 0345 / 483 41 56 59<br />(Ortstarif/Mobil abweichend)</b></font>';
		if(strpos($shoutcast_cursong,"Becksboy")!==false) $modipic = '<img src=http://www.URL.de/gallery/image.php?album_id=1&image_id=2></img>';
			elseif(strpos($shoutcast_cursong,"MODINAME1")!==false) $modipic = '<img src=http://www.URL.de/gallery/image.php?album_id=1&image_id=3></img>';
			elseif(strpos($shoutcast_cursong,"MODINAME2")!==false) $modipic = '<img src=http://www.URL.de/gallery/image.php?album_id=1&image_id=632></img>';
		else {
## Dieses Bild wird angezeigt, wenn Modiname nicht erkannt wird oder Stream läuft. ##
			$modipic = '<img src=http://www.URL.de/gallery/image.php?mode=thumbnail&album_id=1&image_id=610></img>';
		}
	}
## Ab hier nichts mehr aendern. ##
## Generierung der Ausgabe ##
else {
$rs1status = '<b><font color="red">Offline</font></b>';
$rs1song = 'Zur Zeit leider keine Sendung.';
$rs1listener = '';
$rs1statuspic = '<img src=http://www.URL.de/offlinepic.gif></img>';
$modipic = '';
$rs1add = '<font color="black"><b>Bitte den Sendeplan beachten</b></font>';
}

if ($radio_status1 == 1) {
$rs2status = '<b><a href="http://xxx.xxx.xxx.xxx:8001/listen.pls" target="_blank"><img src="video.gif" align="middle"><font color="green">  Online</font> </img></a></b>';
$rs2statuspic = '<img src=http://www.URL.de/onlinepic.gif></img>';
$rs2song = $shoutcast_cursong;
$rs2listener = 'Zuhörer:' . $shoutcast_currentlisteners1 . '/' . $shoutcast_maxlisteners1;
}
else {
$rs2status = '<b><font color="red">Offline</font></b>';
$rs2song = '';
$rs2listener = '';
$rs2statuspic = '<img src=http://www.URL.de/offlinepic.gif></img>';
}
$video = '<font color="black"><b>Videostream</font>';
$audio = '<font color="black"><b>Audiostream</font>';

## output on ##
echo '<TABLE WIDTH=100% BORDER=0 CELLPADDING=0 CELLSPACING=0>';
echo '<TR VALIGN=TOP>';
echo '<TD WIDTH=21%>';
echo '<TABLE WIDTH=100% BORDER=0 CELLPADDING=4 CELLSPACING=0>';
echo '<TR>';
echo '<TD WIDHT=90px ROWSPAN=3 VALIGN=TOP>' .$rs1statuspic . '</TD>';
echo '<TD WIDTH=100% VALIGN=middle align=right>' . $video . '</TD>';
echo '</TR>';
echo '<TR>';
echo '<TD WIDTH=100% VALIGN=middle align=right>' .$rs1status . '</TD>';
echo '</TR>';
echo '<TR>';
echo '<TD WIDTH=100% HEIGHT=44 VALIGN=middle align=right><b><font color="black">' . $rs1listener . '</font></b></TD>';
echo '</TD>';
echo '</TR>';
echo '</TABLE>';
echo '</TD>';
echo '<TD WIDTH=14% align=center VALIGN=middle>' . $modipic . '</TD>';
echo '</TD>';
echo '<TD ROWSPAN=2 WIDTH=44%>';
echo '<b><font color="black"> Aktuell:<marquee> >>' . $rs1song . '<< </marquee></font></b><br /><br />' . $rs1add ;
echo '</TD>';
echo '<TD WIDTH=21%>';
echo '<TABLE WIDTH=100% BORDER=0 CELLPADDING=4 CELLSPACING=0>';
echo '<TR>';
echo '<TD WIDHT=90px ROWSPAN=3 VALIGN=middle>' .$rs2statuspic . '</TD>';
echo '<TD WIDTH=100% VALIGN=middle align=right>' . $audio . '</TD>';
echo '</TR>';
echo '<TR>';
echo '<TD WIDTH=100% VALIGN=TOP align=right>' .$rs2status . '</TD>';
echo '</TR>';
echo '<TR>';
echo '<TD WIDTH=100% HEIGHT=44 VALIGN=middle align=right><b><font color="black">' . $rs2listener . '</font></b></TD>';
echo '</TD>';
echo '</TR>';
echo '</TABLE>';
echo '</TD>';
echo '</TR>';
echo '</TABLE>';
## output off ##
## shoutcasthack by bikky off ##
## Erweitert by Fishtown ##
?
Wie ihr seht werden hiermit 2 Shoutcastserver abgefragt. Auf beiden wird das selbe gesendet, der eine halt nur mit Video.
Die Bilder der Modis werden aus der Galerie (die von nickvergessen) geholt. Eventuell kann man das ja auch anders oder besser lösen.

Ich dachte mir das so:
Adminbereich
Angaben der Serverdaten (IP und Ports)
Einfügen und ändern von Modis (eventuell mit Bildupload)
Angezeigte Texte erstellen/ändern

Ausgabe im Forum oder über Block bei Portalnutzung.
Antworten

Zurück zu „[3.0.x] Mod Suche/Anfragen“