HowTo: Logitech Media Server / Squeezebox Player mit Loxone steuern

Einklappen
X
 
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • preslmayer
    kommentierte 's Antwort
    Genau für das war es gedacht!
    Es lässt sich auf alle Fälle feststellen, ob der Player verfügbar ist bzw. könnte ich den Mode nummerisch darstellen.
    zb.:
    PLAY = 1; STOP = 0; PAUSE = 3

  • hismastersvoice
    kommentierte 's Antwort
    Ich kenne die HTTP Eingänge, aber damit ist es (noch) nicht möglich Text zu verarbeiten sondern nur Werte. Somit kann ich so nur das Volume nutzen.
    Vielleicht geht es ja in Zukubft mal.

  • preslmayer
    kommentierte 's Antwort
    Bei der XML habe ich mich an dem wie es bei Loxone aussieht gehalten.
    Den Text aus dem XML kannst wie folgt auslesen
    This documentation page describes how to handle a Virtual HTTP input in Loxone Config.

    So kannst du das Abholen des Wertes bei Bedarf von Loxone erledigen lassen! ;-)

  • hismastersvoice
    antwortet
    Beim abfragen des Playerstatus mit... http://max2play/plugins/multisq2lox/...cd:ef:12:34:01
    <LL playerid="xx:xx:xx:xx:xx:xx" mode="play" volume="60" title="Faded" ip="xxxx.xxx.xxx.xxx" port="xxxx"/>

    Fehlt leider der Artsit...
    Habe das Script mal etwas erweitert, dann würde es so aussehen.
    <LL playerid="xx:xx:xx:xx:xx:xx" mode="play" volume="60" title="Faded" artist="Alan Walker" title_artist="Faded / Alan Walker" ip="xxxx.xxx.xxx.xxx" port="xxxx"/>

    Allerdings muss ich auch sagen das ich keine Möglichkeit kenne Text aus XML in den Loxserver zu bekommen.
    Oder hast du eine Lösung dafür, es muss ja einen Grund geben warum du dir die Mühe geamcht hast die Werte einmal per Bash und das zweite Mal per PHP Telnet abzufrage.

    Zuletzt geändert von hismastersvoice; 18.02.2016, 18:31.

    Einen Kommentar schreiben:


  • hismastersvoice
    kommentierte 's Antwort
    würde die Beschränkung von 6 Stück herausnehmen, setzt sie doch einfach auf 10 o. 15 hoch dann kann man wirklich alle player und nicht nur die der multisqeeze abfragen

    setzte dich doch mal mit dem macher von max2play in verbindung, da sonst im schlechtesten fall immer nach einem update die index.php ausgebessert werden muss. vielleicht kann er deine version ja mit einbauen.

  • preslmayer
    antwortet
    Hallo!

    Ich habe ein max2play Plugin (MultiSq2Lox) erstellt, welches mehrer Squeezeplayer überwachen und die Daten an Loxone schicken kann.

    Weiters ist es möglich über:
    Code:
    http://max2play/plugins/multisq2lox/controller/Status.php?playerid=ab:cd:ef:12:34:01
    den aktuellen Status eines Players abzufragen.
    Damit diese Abfrage funktioniert, muss ein kleiner Bug in der "index.php" ausgebessert werden. Die originale "index.php" ist leider nicht ganz "well-formed" und führt bei der Ausführung von "Status.php" zu einem Fehler (ausgebessertes File liegt bei)!

    Wichtig ist bei der ganzen Sache, dass jeder Squeezeplayer seine eigene eindeutige PlayerId (MAC) hat.

    Ich hoffe es klappt alles!
    Für Anregegungen stehe ich gerne zur Verfügung!

    lg
    Angehängte Dateien
    Zuletzt geändert von preslmayer; 18.02.2016, 15:17.

    Einen Kommentar schreiben:


  • Negropo
    kommentierte 's Antwort
    Hallo,
    hat super funktioniert im Zusammenspiel mit dem KNX-Aktor.
    Besten Dank!
    Gruß Negropo

  • Negropo
    antwortet
    Hallo hismastersvoice,

    Vielen Dank für den Code, werde ich versuchen heute Abend umzusetzen.

    Gruß Negropo

    Gesendet von meinem SM-G925F mit Tapatalk


    Einen Kommentar schreiben:


  • hismastersvoice
    kommentierte 's Antwort
    Hab mal in Post #75 kurz eine PHP Version bereitgestellt...
    Versucht es mal, ich denke müsste gehen.

  • hismastersvoice
    antwortet
    Negropo

    Hier mal eine Möglichkeit Titel und Volume per PHP und Telnet abzufragen.
    Bin jetzt zwar nicht der PHP-König aber es funktioniert.

    PHP-Code:
    <?php
    //Einstellungen
    $LMS_Server = "192.168.xxx.xxx"; //IP des LMS
    $LMS_Port = "9090"; // Port des LMS
    $TimeOut = "10"; //Timeout wenn Telnet nicht erreichbar
    
    $MAC = "xx:xx:xx:xx:xx:xx"; //MAC-Adresse des Players
    $LoxIP = "192.168.xxx.xxx"; //IP des MS
    $LoxUser = "xxxxxxxxxxxx"; //User des MS
    $LoxPass = "xxxxxxxxxxxx"; //PAsswort des MS
    $LoxVTI_Title = "VTI5"; //VTI fuer Titel
    $LoxVTI_Volume = "VI42"; //VI fuer Volume
    
    //Telnet-Verbindung aufbauen
    $telnet = fsockopen($LMS_Server, $LMS_Port, $errno, $errstr, $TimeOut);
    
    if(!$telnet)
            {
            echo "Connexion failed\n";
            exit();
            }
    else
            {
            //Abfrage der Daten
            fputs ($telnet, "".$MAC." title ? \r\n");
            $title = fgets($telnet, 1024);
            fputs ($telnet, "".$MAC." mixer volume ? \r\n");
            $volume = fgets($telnet, 128);
            fputs ($telnet, "exit\r\n");
            
            //Ausgabe bearbeiten
            $title = substr($title, 34);
            $volume = substr($volume, 41);
        }    
        
        //Titel und Volume senden
        $sendtitle = fopen( "http://".$LoxUser.":".$LoxPass."@".$LoxIP."/dev/sps/io/".$LoxVTI_Title."/".$title."", "r");
        fclose ($sendtitle);
        $sendvolume = fopen( "http://".$LoxUser.":".$LoxPass."@".$LoxIP."/dev/sps/io/".$LoxVTI_Volume."/".$volume."", "r");
        fclose ($sendvolume);
    ?>

    Einen Kommentar schreiben:


  • Peter B
    kommentierte 's Antwort
    Ich bekomm den Text auch nicht in den Miniserver....
    nach dem rawurlencode und Leeerzeichen entfernen am Anfang sieht er so aus in der Echo ausgabe Von%20Mo%2025.01.%2003%3A00%20bis%20Mo%2025.01.%20 12%3A00%20ist%20mit%20Glatteis%20Stufe%201%20zu%20 rechnen
    wenn Ich das im Browser so eingebe miniserver/dev/sps/io/VTI4/Von%20Mo%2025.01.%2003%3A00%20bis%20Mo%2025.01.%20 12%3A00%20ist%20mit%20Glatteis%20Stufe%201%20zu%20 rechnen dann funktioniert es
    es ist zum verzweifeln

  • Peter B
    kommentierte 's Antwort
    Ja, stell eine Adresse ein die es nicht gibt

  • Negropo
    kommentierte 's Antwort
    Wahrscheinlich blöde Frage: Funktioniert das denn ohne KNX?

  • Peter B
    kommentierte 's Antwort
    Versuch mal den VTIx an einen Eib Text Aktor zu senden und Visualisier den dann mal....

  • Negropo
    kommentierte 's Antwort
    Hallo Peter B,

    ja, daran hatte ich auch schon gedacht. Habe es jetzt mit rawurlencode auch hinbekommen. In der Liveview erscheint jetzt auch der ganze Text. Jetzt ist jedoch das Problem, dass es in der Visu nicht angezeigt wird. :-( Hat da jemand vllt. eine Idee?

    Besten Dank und Gruß

    Negropo
Lädt...