Youtube Suche

Hi Community,

da es heutzutage ja wirklich für jedes Gerät oder Programm eine Youtubesuche gibt, selbst meine Tatstatur hat eine eigene Youtubesuche, war ich irgendwie der Meinung wir brauchen das für IPS auch. Und zwar sofort.

Installation:

[ol]
[li]Icon (Angang unten) in den Ordner „webfront/user/icons/fixed“ werfen
[/li][li]Script an Zielort, also die Kategorie wo es hin soll, einfügen
[/li][li]Script über execute/ausführen starten
[/li][/ol]

<?
////////////////////////////////////////////////////////////////////////////////
/////////////////////////////KONFIGURATION//////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////

$player_height = 340;
$search_limit  = 14;

////////////////////////////////////////////////////////////////////////////////
/////////////////////////////SCRIPT/////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////

if ($IPS_SENDER == "Execute") {
	global $IPS_SELF;
	$object = IPS_GetObject($IPS_SELF);
	$parentID = $object['ParentID'];
	$vid = @IPS_GetVariableIDByName("Youtube Suche", $parentID);
		if($vid === false)
		{
			$vid = IPS_CreateVariable(3);
			IPS_SetParent($vid, $parentID);
			IPS_SetName($vid, "Youtube Suche");
			IPS_SetInfo($vid, "this variable was created by script #$IPS_SELF");
			IPS_SetVariableCustomProfile($vid, "~TextBox");
			IPS_SetIcon($vid, "youtube");
			IPS_SetVariableCustomAction($vid, $IPS_SELF);
		}
}

if ($IPS_SENDER == "WebFront")
{
   SetValue($IPS_VARIABLE, $IPS_VALUE);

	$sxml = simplexml_load_file("http://gdata.youtube.com/feeds/api/videos?q=".$IPS_VALUE."&v=2&format=5&max-results=".$search_limit."&orderby=relevance");
	$holder=array();
	foreach($sxml->children() as $child)
  	{
  		if($child->getName()=='entry'){
			$id = explode(":", $child->id);
			array_push($holder, array($id[3],(string)$child->title));
		}
	}

	if(count($holder)>0)
	{
		$string = "<center><table><tr>";
		for ($i = 0; $i < ceil(count($holder)/2); $i++)
			{
				$string .= "<td><a href='http://www.youtube.com/embed/".$holder[$i][0]."' target='videoholder'><img src='http://img.youtube.com/vi/".$holder[$i][0]."/default.jpg' title='".$holder[$i][1]."' style='border:1px solid #3B3B4D;'></a></td><td></td>";
			}
		$string .= "</tr></table><br>";
		$string .= "<iframe name='videoholder' src='http://www.youtube.com/embed/".$holder[0][0]."' style='border:1px solid #3B3B4D;' height='".$player_height."' width='".($player_height*1.65)."'></iframe><br><br>";
		$string .= "<table><tr>";
		for ($i = ceil(count($holder)/2); $i < count($holder); $i++)
			{
				$string .= "<td><a href='http://www.youtube.com/embed/".$holder[$i][0]."' target='videoholder'><img src='http://img.youtube.com/vi/".$holder[$i][0]."/default.jpg' title='".$holder[$i][1]."' style='border:1px solid #3B3B4D;'></a></td><td></td>";
			}
		$string .= "</tr></table></center>";
	}
	else
	{
		$string = "keine Videos gefunden.";
	}
	WFC_SendPopup(IPS_GetObjectIDByName("WebFront Configurator", 0), "Youtube - ".$IPS_VALUE,  $string);
}
?>

youtube.png

Hi Imhoteph,

danke für den Script, funktioniert super.

Mal ne Frage, bist du nen Segler oder ist es nen Zufall das du Yacht Week eingegeben hast?

Gruess Mario

Ihmo,

vielen Dank für das unterhaltsame Skript.:loveips:

Somit steht Musikvideos auf dem Touch nichts mehr im Wege.

Somit wird IPS zum richtigen Infotainmentsystem

Musik auf YouTube? Ja, das waren noch Zeiten… :smiley:

Selbst nur mal im Urlaub aus Langeweile etwas Kat. Ein Freund von mir ist da aktiver und meint wir sollten den Yacht Week Spaß uns im nächsten Sommer mal geben. Außerdem ist der Trailer von der Musik her einfach super.

Zum Script: Ich suche noch verzweifelt die Möglichkeit eine bessere Auflösung beim Aufruf mitzugeben. Finde das nur bislang nicht mehr. Die haben da schon wieder irgendwas geändert. So wie früher gehts nicht… Melde mich wieder…

edit: @Tonic Youtube+Proxy = Musik :wink:

Gruß Imho

shice, so einfach? War ja iwi auch klar. :smiley:

Toni

Oooh ja… YouTube Proxy

Your credit is over try again in 479 minutes or buy some credit.
To avoid the proxy server overloading the free service is limited to 8388608 bytes every 8 hours.

War ja klar :mad:

@ Imhoteph,

Werde im Nov. ne Kat.-Törn machen in der Karibik und da tauchen, aber das mit Yacht Week habe ich mir auch schon überlegt, das wäre ne coole Sache, gib bescheid, falls du gehst, wir wären auch dabei. Könnten dann uns nen Boot mieten.

Hallo Imho,

das wäre meine nächste Frage gewesen, habe mich darin auch schon versucht :rolleyes:

Tja, so wie es früher ging geht es tatsächlich im Moment nicht. Hoffentlich wird das in der API wieder eingebaut. Naja shit happens. Ganz clever hat man sich bei Youtube gedacht: „Wieso dem User ne Eingabemöglichkeit schaffen wenn mans auch berechnen kann…“

Soll heißen, der iFrame muss auf eine gewisse Höhe gebracht werden und die Qualität wird automatisch eingepasst.

$player_height = 365;

Das bringt also schonmal wenigstens eine Stadartauflösung von 360P.

So weit, so schlecht
Gruß Imho

Vielen Dank für das Script :slight_smile:

Danke für das gut script B-)
Hätte noch eine Frage und zwar hab ich bei
Search Limits 40 eingetragen.
Leider sehe ich aber nicht alle Einträge, da mir der Balken
Zum verschieben fehlt. Ist Das nur bei mir so?
Danke

Moin Imho,

wollte dein Script integrieren … klappt leider nicht :0( Die String YouTube suche wird zwar angelegt aber sonst passiert nichts. Hast du ne Idee ? Oder vielleicht wer anders ?

Ciao

Andreas

Hallo Andreas,

schau Dir das mal an.

Moment mal,

Du brauchst doch nur die neu generierte Variable im Webfront anzeigen!!!

Ich habe das proplem das wenn ich bei der Konfiguration
$search_limit = 30;
eingibt, das nicht alles angezeigt wird? Sprich es fehlt die „Scrollbar“ ??

Hat da jemand eine Idee wie man das lösen könnte???

Hab das Problem gefunden. Musste den Webfront Configurator manuell zuweisen, da ich mehrere hatte. Jetzt läufts :0)

Danke

Andreas

jemand eine idee wie man noch den maximieren button hinzufügen kann?

@wuppi83, ich habe das gleich Problem wie du.
Wie meinst du das mit dem zuweisen genau, was muss ich tun?

Ich habe schon ein bisschen rumprobiert aber bekmme es leider nicht hin bzw. weis nicht genau was gemeint ist.