+ Antworten
Ergebnis 1 bis 9 von 9
  1. #1
    Registriert seit
    Feb 2011
    Ort
    Darmstadt 64297
    Beiträge
    1,716

    Standard Plex Status Play/Pause ermitteln

    Hi ein kleine Script, mit dem man den Status von einem Plexclient ermitteln kann:

    Play/Pause :

    PHP-Code:
     $ant=@Sys_GetURLContent('http://192.168.0.20:3005/jsonrpc?request={"jsonrpc":"2.0","method":"Player.GetProperties","params":{"properties":["speed"],"playerid":1},"id":1}');

    if (
    $ant=='{"id":1,"jsonrpc":"2.0","result":{"speed":1}}') echo "Plex is playing";

    if (
    $ant=='{"id":1,"jsonrpc":"2.0","result":{"speed":0}}') echo "Plex is not playing"
    Es muss nur die IP-Adresse des Clients geändert werden....

    Einfach einen Timer der jede 1 -x Sec. läuft anhängen...

    Ich habe eine boolean Variable angelegt, das ich mit diesem Script schalte... Ich schalte damit LED Licht im Wohnzimmer an, wenn Plex nix abspielt ;-)

    Wenn jemand rausfinden könnte, was man damit noch so abfragen oder steuern könnte wäre ich sehr sehr dankbar...

    Für diese Info musste ich 2 Stunden im Netz danach suchen !
    Geändert von drapple (01.11.15 um 20:22 Uhr)
    HomeMatic, Raspberry PI 2, PI-Beacon, Poskey 56, Apple, iPhone 6, Dampfen ;-) Plex, Rasplex, IP-Cams, iPad.....

  2. #2
    Registriert seit
    Jan 2015
    Ort
    Baden-Württemberg
    Beiträge
    255

    Ich habe kürzlich meinen Plex Client in IPS eingebunden.
    Funktioniert bei dir so nicht weil dir meine Methoden zum Anlegen der Variablen fehlen, aber das Grundsätzliche wird daraus klar.
    Eventuell hilft dir das ja weiter:

    PHP-Code:
    <?
    /*
        Dieses Skript dient zur Steuerung eines Plex Home Theater Clients.

        Es muss in den Programmeinstellungen unter Services die Steuerung via HTTP aktiviert werden.
        Außerdem muss die Datei guisettings.xml mit folgendem Inhalt erstellt werden:
            <esallinterfaces>true</esallinterfaces>

        Die Datei muss sich in folgendem Ordner befinden (Systemabhängig):
            Windows: %APPDATA%\Plex Home Theater\userdata\guisettings.xml
            OS X: ~/Library/Application Support/Plex Home Theater/userdata/guisettings.xml
            Linux: ~/.plexht/temp/userdata/guisettings.xml

        Einrichtung:
        - Client Socket anlegen und nach Wunsch benennen
        - Register Variable erstellen und damit dieses Skript verknüpfen
        - Skript einmal manuell ausführen damit alle Ereignisse, Profile, Variablen und Instanzen angelegt werden
        - Ereignisse konfigurieren
        - Verknüpfungen von Variablen in der Visualisierung erstellen

        von: Daniel Schäfer (@gotteshand)
        Version: 1.0
    */

    $socket_id 44103 /*[Plex Wohnzimmer]*/// IPS ID des Client Sockets zum Plex Home Theater Client

    define("PAUSED""Pausiert");
    define("PLAY""Spielt");
    define("STOPPED""");
    define("EPISODE""Serie");
    define("MOVIE""Film");
    define("PICTURE""Foto");
    define("VOLUME""Lautstärke");
    define("STATUS""Status");
    define("COVER""Cover");
    define("TITLE""Titel");
    define("SONG""Song");



    // AB HIER NICHT BEARBEITEN

    if(isset($socket_id) && IPS_ObjectExists($socket_id)) {
        
    $socket IPS_GetObject($socket_id);

        
    // Instanz
        
    $instance getInstanceByIdentifier("plex_".$socket['ObjectName'], $socket['ObjectName']);
        
    // Variablenprofile
        
    $profileName "plex.client_power";
        if(!
    IPS_VariableProfileExists($profileName)) {
            
    IPS_CreateVariableProfile($profileName0);
            
    IPS_SetVariableProfileAssociation($profileName0"Ausschalten""Power"0xFF0000);
            
    IPS_SetVariableProfileAssociation($profileName1"Einschalten""Power"0x99CC00);
        }
        
    $profileName "plex.client_status";
        if(!
    IPS_VariableProfileExists($profileName)) {
            
    IPS_CreateVariableProfile($profileName0);
            
    IPS_SetVariableProfileAssociation($profileName0"Inaktiv""", -1);
            
    IPS_SetVariableProfileAssociation($profileName1"Aktiv""", -1);
        }
        
    $profileName "plex.player_controls";
        if(!
    IPS_VariableProfileExists($profileName)) {
            
    IPS_CreateVariableProfile($profileName1);
            
    IPS_SetVariableProfileAssociation($profileName0"Prev""", -1);
            
    IPS_SetVariableProfileAssociation($profileName1"Stop"""0xFF0000);
            
    IPS_SetVariableProfileAssociation($profileName2"Pause"""0xFFCC00);
            
    IPS_SetVariableProfileAssociation($profileName3"Play"""0x99CC00);
            
    IPS_SetVariableProfileAssociation($profileName4"Next""", -1);
        }
        
    $profileName "plex.movement_controls";
        if(!
    IPS_VariableProfileExists($profileName)) {
            
    IPS_CreateVariableProfile($profileName1);
            
    IPS_SetVariableProfileAssociation($profileName0"Hoch""", -1);
            
    IPS_SetVariableProfileAssociation($profileName1"Runter""", -1);
            
    IPS_SetVariableProfileAssociation($profileName2"Links""", -1);
            
    IPS_SetVariableProfileAssociation($profileName3"Rechts""", -1);
            
    IPS_SetVariableProfileAssociation($profileName4"Auswahl""", -1);
            
    IPS_SetVariableProfileAssociation($profileName5"Zurück""", -1);
        }
        
    $profileName "plex.on_off";
        if(!
    IPS_VariableProfileExists($profileName)) {
            
    IPS_CreateVariableProfile($profileName0);
            
    IPS_SetVariableProfileAssociation($profileName0"Aus""", -1);
            
    IPS_SetVariableProfileAssociation($profileName1"Ein"""0x99CC00);
        }
        
    $profileName "plex.repeat";
        if(!
    IPS_VariableProfileExists($profileName)) {
            
    IPS_CreateVariableProfile($profileName1);
            
    IPS_SetVariableProfileAssociation($profileName0"Aus""", -1);
            
    IPS_SetVariableProfileAssociation($profileName1"Aktuelles"""0x99CC00);
            
    IPS_SetVariableProfileAssociation($profileName2"Alle"""0x99CC00);
        }
        
    // Variablen
        
    $_power getVariableByIdentifier("plex_".$socket['ObjectName']."_power"$instance"Zustand"0"plex.client_power"null$_IPS['SELF'], "Power"nullfalse);
        
    $_cover getVariableByIdentifier("plex_".$socket['ObjectName']."_cover"$instanceCOVER3null0null"Image"nullfalse);
        
    $_title getVariableByIdentifier("plex_".$socket['ObjectName']."_title"$instanceTITLE3null1null"Information"nullfalse);
        
    $_player_controls getVariableByIdentifier("plex_".$socket['ObjectName']."_player_controls"$instance"Wiedergabe"1"plex.player_controls"2$_IPS['SELF'], "ArrowRight"nullfalse);
        
    $_movement_controls getVariableByIdentifier("plex_".$socket['ObjectName']."_movement_controls"$instance"Steuerung"1"plex.movement_controls"3$_IPS['SELF'], "Gear"nullfalse);
        
    $_volume getVariableByIdentifier("plex_".$socket['ObjectName']."_volume"$instanceVOLUME1"~Intensity.100"4$_IPS['SELF'], "Speaker"nullfalse);
        
    $_client_status getVariableByIdentifier("plex_".$socket['ObjectName']."_client_status"$instancenull0"plex.client_status"nullnull"Power"nullfalse);
        
    $_status getVariableByIdentifier("plex_".$socket['ObjectName']."_status"$instanceSTATUS3nullnullnullnullnullfalse);
        
    $_playerid getVariableByIdentifier("plex_".$socket['ObjectName']."_playerid"$instancenull3null0nullnullnullfalse);
        
    $_shuffle getVariableByIdentifier("plex_".$socket['ObjectName']."_shuffle"$instance"Zufallsmodus"0"plex.on_off"null$_IPS['SELF'], "Shuffle"nullfalse);
        
    $_repeat getVariableByIdentifier("plex_".$socket['ObjectName']."_repeat"$instance"Wiederholung"1"plex.repeat"null$_IPS['SELF'], "Repeat"nullfalse);
        
    $_HTML getVariableByIdentifier("plex_".$socket['ObjectName']."_html"$instance"HTML"3"~HTMLBox"nullnullnullnullfalse);
        
    $_serverip getVariableByIdentifier("plex_".$socket['ObjectName']."_serverip"$instance"Plex Media Server IP Adresse"3null1nullnullnulltrue);
        
    $_serverport getVariableByIdentifier("plex_".$socket['ObjectName']."_serverport"$instance"Plex Media Server Port (Standard: 32400)"3null1nullnullnulltrue);
        
    $_clientip getVariableByIdentifier("plex_".$socket['ObjectName']."_clientip"$instance"Plex Home Theater Client IP Adresse"3null1nullnullnulltrue);
        
    $_clientport getVariableByIdentifier("plex_".$socket['ObjectName']."_clientport"$instance"Plex Home Theater Client Port (Standard: 3005)"3null1nullnullnulltrue);
        
    $_clientmac getVariableByIdentifier("plex_".$socket['ObjectName']."_clientmac"$instance"Plex Home Theater Client MAC Adresse (WOL)"3null1nullnullnulltrue);
         
    // Ereignis
        
    $_event getEventByIdentifierAndType("plex_".$socket['ObjectName']."_checkevent"$_IPS['SELF'], 1);
        
        
         
    $media_server_ip GetValue($_serverip);
         
    $media_server_port GetValue($_serverport);
         
    $client_ip GetValue($_clientip);
         
    $client_port GetValue($_clientport);
         
    $client_mac GetValue($_clientmac);

        if(
    $_IPS['SENDER'] == "RegisterVariable" && isset($_IPS['VALUE']) && strlen($_IPS['VALUE']) > 0) { // Ausführung durch Socket => Reaktion auf Client Information
            
    $JSON json_decode($_IPS['VALUE']);

            
    // Laufzeitverhalten der Plex Instanz
            
    if(isset($JSON->method)) {
                switch (
    $JSON->method) {
                    case 
    'Player.OnPause':
                        
    SetValue($_statusPAUSED);
                        
    SetValue($_player_controls2);
                        break;
                    case 
    'Player.OnPlay':
                        
    SetValue($_statusPLAY);
                        
    SetValue($_player_controls3);

                        if(isset(
    $JSON->params->data->item)) {
                            
    $item $JSON->params->data->item;
                            
    $player_id = -1;
                            switch (
    $item->type) {
                                case 
    'episode':
                                    
    $properties '["title", "rating", "year", "genre", "duration", "thumbnail", "season", "episode", "plot", "cast", "showtitle", "streamdetails"]';
                                    
    $player_id 1;
                                    break;
                                case 
    'movie':
                                    
    $properties '["title", "rating", "year", "genre", "duration", "thumbnail", "plot", "cast", "streamdetails"]';
                                    
    $player_id 1;
                                    break;
                                case 
    'picture':
                                    
    $properties '["title", "year", "thumbnail"]';
                                    
    $player_id 1;
                                    break;
                                case 
    'song':
                                    
    $properties '["title", "artist", "albumartist", "year", "genre", "album", "track", "duration", "thumbnail", "disc"]';
                                    
    $player_id 0;
                                    break;
                            }

                            
    SetValue($_playerid$player_id);
                            if(
    $player_id >= 0)
                                
    CSCK_SendText($socket_id'{"jsonrpc":"2.0","method":"Player.GetItem","params":{"playerid":'.$player_id.', "properties": '.$properties.'},"id":1}');
                        }
                        break;
                    case 
    'Player.OnStop':
                        
    SetValue($_title"");
                        
    SetValue($_statusSTOPPED);
                        
    SetValue($_player_controls0);
                        
    SetValue($_cover"");
                        
    SetValue($_playerid"");
                        break;
                    case 
    'Application.OnVolumeChanged':
                        
    SetValue($_volume$JSON->params->data->volume);
                        break;
                    case 
    'Player.OnPropertyChanged':
                        if(isset(
    $JSON->params->data->property)) {
                            if(isset(
    $JSON->params->data->property->repeat)) {
                                
    $value $JSON->params->data->property->repeat;
                                if(
    $value == "off")
                                    
    $value 0;
                                else if(
    $value == "one")
                                    
    $value 1;
                                else if(
    $value == "all")
                                    
    $value 2;
                                
    SetValue($_repeat$value);
                            }
                            else if(isset(
    $JSON->params->data->property->shuffled)) {
                                
    $value $JSON->params->data->property->shuffled;
                                if(
    $value == 0)
                                    
    $value 0;
                                else if(
    $value == 1)
                                    
    $value 1;
                                
    SetValue($_shuffle$value);
                            }
                        }
                        break;
                    case 
    'System.OnQuit':
                        
    close();
                    default:
                        break;
                }
            }

            
    // Rückantworten auf Anfragen
            
    if(isset($JSON->result)) {
                
    $result $JSON->result;

                if(isset(
    $result->item)) {
                    
    $item $result->item;
                    
    $title "";

                    
    // cover
                    
    if(isset($item->thumbnail) && strlen($item->thumbnail) > 0) {
                        
    $tmp explode("url="urldecode(urldecode($item->thumbnail)));
                        
    $url $tmp[1];
                        
    $url str_replace("127.0.0.1"$media_server_ip$url);
                        
    $cover_bindata "<img class='plex_cover' src='".$url."'>";
                        
    SetValue($_cover$cover_bindata);
                    } else {
                        
    SetValue($_cover"");
                    }

                    
    // titel zusammenbauen
                    
    if(isset($item->artist)) {
                        
    $title $item->artist[0]." - ";
                    }
                    if(isset(
    $item->showtitle)) {
                        
    $title utf8_decode($item->showtitle." - ");
                    }
                    if(isset(
    $item->label)) {
                        
    $title .= $item->label;
                    }
                    if(isset(
    $item->album)) {
                        
    $title .= " [".$item->album."]";
                    }
                    if(isset(
    $item->season) && isset($item->episode)) {
                        
    $title .= " [S".$item->season."E".$item->episode."]";
                    }
                    
    SetValue($_title$title);
                }
            }
        }
        else if(
    $_IPS['SENDER'] == "WebFront" && isset($_IPS['VALUE'])) { // Steuerung des Clients via Webfrontend
            
    $socket IPS_GetObject($socket_id);
            
    $player_id GetValue($_playerid);

            
    $command "";
            switch (
    unifyIdent(IPS_GetObject($_IPS['VARIABLE'])['ObjectIdent'])) {
                case 
    unifyIdent("plex_".$socket['ObjectName']."_volume"): // volume
                    
    $command '{"jsonrpc":"2.0","method":"Application.SetVolume","params":{"volume": '.$_IPS['VALUE'].'},"id":1}';
                    break;
                case 
    unifyIdent("plex_".$socket['ObjectName']."_player_controls"): // player control
                    
    switch($_IPS['VALUE']) {
                        case 
    0// prev
                            
    if($player_id >= 0)
                                
    $command '{"jsonrpc":"2.0","method":"Player.GoTo","params":{"playerid":'.$player_id.', "to":"previous"},"id":1}';
                            break;
                        case 
    1// stop
                            
    if($player_id >= 0)
                                
    $command '{"jsonrpc":"2.0","method":"Player.Stop","params":{"playerid":'.$player_id.'},"id":1}';
                            break;
                        case 
    2// pause
                            
    if($player_id >= 0)
                                
    $command '{"jsonrpc":"2.0","method":"Player.PlayPause","params":{"playerid":'.$player_id.'},"id":1}';
                            break;
                        case 
    3// play
                            
    if($player_id >= 0)
                                
    $command '{"jsonrpc":"2.0","method":"Player.PlayPause","params":{"playerid":'.$player_id.'},"id":1}';
                            break;
                        case 
    4// next
                            
    if($player_id >= 0)
                             
    $command '{"jsonrpc":"2.0","method":"Player.GoTo","params":{"playerid":'.$player_id.', "to":"next"},"id":1}';
                            break;
                    }
                    break;
                case 
    unifyIdent("plex_".$socket['ObjectName']."_movement_controls"): // player control
                    
    switch($_IPS['VALUE']) {
                        case 
    0// hoch
                            
    $command '{"jsonrpc":"2.0","method":"Input.Up","params":{},"id":1}';
                            break;
                        case 
    1// runter
                            
    $command '{"jsonrpc":"2.0","method":"Input.Down","params":{},"id":1}';
                            break;
                        case 
    2// links
                            
    $command '{"jsonrpc":"2.0","method":"Input.Left","params":{},"id":1}';
                            break;
                        case 
    3// rechts
                            
    $command '{"jsonrpc":"2.0","method":"Input.Right","params":{},"id":1}';
                            break;
                        case 
    4// auswahl
                            
    $command '{"jsonrpc":"2.0","method":"Input.Select","params":{},"id":1}';
                            break;
                        case 
    5// zurück
                            
    $command '{"jsonrpc":"2.0","method":"Input.Back","params":{},"id":1}';
                            break;
                    }
                    break;
                case 
    unifyIdent("plex_".$socket['ObjectName']."_repeat"): // repeat
                    
    switch($_IPS['VALUE']) {
                        case 
    0// aus
                            
    if($player_id >= 0)
                                
    $command '{"jsonrpc":"2.0","method":"Player.SetRepeat","params":{"playerid":'.$player_id.', "repeat":"off"},"id":1}';
                            break;
                        case 
    1// aktuelles
                            
    if($player_id >= 0)
                                
    $command '{"jsonrpc":"2.0","method":"Player.SetRepeat","params":{"playerid":'.$player_id.', "repeat":"one"},"id":1}';
                            break;
                        case 
    2// alle
                            
    if($player_id >= 0)
                                
    $command '{"jsonrpc":"2.0","method":"Player.SetRepeat","params":{"playerid":'.$player_id.', "repeat":"all"},"id":1}';
                            break;
                    }
                    break;
                case 
    unifyIdent("plex_".$socket['ObjectName']."_shuffle"): // repeat
                    
    switch($_IPS['VALUE']) {
                        case 
    0// aus
                            
    if($player_id >= 0)
                                
    $command '{"jsonrpc":"2.0","method":"Player.SetShuffle","params":{"playerid":'.$player_id.', "shuffle":"toggle"},"id":1}';
                            break;
                        case 
    1// aktuelles
                            
    if($player_id >= 0)
                                
    $command '{"jsonrpc":"2.0","method":"Player.SetShuffle","params":{"playerid":'.$player_id.', "shuffle":"toggle"},"id":1}';
                            break;
                    }
                    break;
                case 
    unifyIdent("plex_".$socket['ObjectName']."_power"): // repeat
                    
    switch($_IPS['VALUE']) {
                        case 
    0// Ausschalten inkl. Herunterfahren des Systems
                                
    $command '{"jsonrpc":"2.0","method":"System.Shutdown","params":{},"id":1}';
                            break;
                        case 
    1// Einschalten
                                    
    wake($client_mac);
                            break;
                    }
                    break;
            }

            if(
    strlen($command) > 0)
                
    CSCK_SendText($socket_id$command);

            
    SetValue($_IPS['VARIABLE'], $_IPS['VALUE']);
        } else if(
    $_IPS['SENDER'] == "TimerEvent") { // Ausführung gemäß des Ereignisses um je nach Verfügbarkeit des Clients den Socket zu (de)aktivieren
            
    $socket IPS_GetInstance($socket_id);

            if(
    checkMediaClient($client_ip$client_port) && $socket['InstanceStatus'] == 104) {
                
    // Socket öffnen
                
    open();
            } else if(!
    checkMediaClient($client_ip$client_port) && ($socket['InstanceStatus'] == 102 || $socket['InstanceStatus'] >= 200)) {
                
    // Socket schließen
                
    close();
            }
        }
    } else {
        
    LogMessage("Fehler: Socket ID nicht gesetzt oder ungültig!");
    }


    function 
    queryMediaServer($query) {
        global 
    $media_server_ip$media_server_port;

        try {
            
    $read file_get_contents("http://".$media_server_ip.":".$media_server_port.$query);
            
    $xml simplexml_load_string($read);
            return 
    $xml;
        } catch (
    Exception $e){
            return 
    null;
        }
    }

    // Prüft ob der Media Client verfügbar ist
    function checkMediaClient($ip$port=3005) {
        
    $status = @fsockopen ($ip$port$errno$errstr1);
        if(!
    $status){
            return 
    false;
        } else {
            return 
    true;
        }
    }


    function 
    open() {
        global 
    $socket_id$_client_status$_player_controls$_power;

        
    SetValue($_client_statustrue);
        
    SetValue($_powertrue);
        
    SetValue($_player_controls0);

        
    CSCK_SetOpen($socket_idtrue);
        
    IPS_ApplyChanges($socket_id);
        
    LogMessage("Socket wurde geöffnet.");
    }

    function 
    close() {
        global 
    $socket_id$_title$_status$_cover$_playerid$_shuffle$_repeat$_client_status$_power;

        
    SetValue($_client_statusfalse);
        
    SetValue($_powerfalse);
        
        
    // Socket schließen
        
    CSCK_SetOpen($socket_idfalse);
        
    IPS_ApplyChanges($socket_id);
        
    LogMessage("Socket wurde geschlossen.");

        
    SetValue($_title"");
        
    SetValue($_status"");
        
    SetValue($_cover"");
        
    SetValue($_playerid, -1);
        
    SetValue($_shuffle0);
        
    SetValue($_repeat0);
    }

    ?>
    Geändert von dansch (01.11.15 um 22:40 Uhr)

  3. #3
    Registriert seit
    Feb 2011
    Ort
    Darmstadt 64297
    Beiträge
    1,716

    Danke für das Script, aber leider funktioniert es nicht:

    Fatal error: Call to undefined function getInstanceByIdentifier() in C:\IP-Symcon\scripts\53636.ips.php on line 47

    Kannst du mir verraten, wie ich deine Methoden zum Anlegen der Variablen zum laufen bekomme ?
    Geändert von drapple (02.11.15 um 08:30 Uhr)
    HomeMatic, Raspberry PI 2, PI-Beacon, Poskey 56, Apple, iPhone 6, Dampfen ;-) Plex, Rasplex, IP-Cams, iPad.....

  4. #4
    Registriert seit
    Jan 2015
    Ort
    Baden-Württemberg
    Beiträge
    255

    Falls jemand anderes darüber stolpert. Das sind meine Hilfsfunktionen die einfach nur Variablen anlegen.
    Die kann man auch einfach ersetzen, durch die passenden IPS Befehle. Das Skript soll nur verdeutlichen was Möglich ist und wie man es im Ansatz machen kann.

  5. #5
    Registriert seit
    Feb 2011
    Ort
    Darmstadt 64297
    Beiträge
    1,716

    Ich bekomme es nicht hin, das der Clientsocket Daten zu Plex sendet oder empfängt :-(

    Der Clientsocket ist mit der IP des PHT Client versehen und hat den Port 3005 zugewiesen. Er ist auch verbunden.

    Wenn man dann mit diesem Script es testet:

    PHP-Code:
    <?
    $socket_id 
    14778 /*[PLE Client Socket]*/// IPS ID des Client Sockets zum Plex Home Theater Client

    //CSCK_SendText($socket_id, '{"jsonrpc":"2.0","method":"Player.GetItem","params":{"playerid":'.$player_id.', "properties": '.$properties.'},"id":1}');
    CSCK_SendText($socket_id'{"jsonrpc":"2.0","method":"Player.GetProperties","params":{"properties":["speed"],"playerid":1},"id":1}');
    ?>
    Passiert nix ! Beim Debug vom C.S. sieht man nur, das die Daten gesendet wurden, aber beim PHT Client passiert nix und man bekommt keine Antwort...

    Und bevor Ihr fagt: Ja ich habe diese Änderungen gemacht :

    Es muss in den Programmeinstellungen unter Services die Steuerung via HTTP aktiviert werden.
    Außerdem muss die Datei guisettings.xml mit folgendem Inhalt erstellt werden:
    <esallinterfaces>true</esallinterfaces>

    Die Datei muss sich in folgendem Ordner befinden (Systemabhängig):
    Windows: %APPDATA%\Plex Home Theater\userdata\guisettings.xml
    OS X: ~/Library/Application Support/Plex Home Theater/userdata/guisettings.xml
    Linux: ~/.plexht/temp/userdata/guisettings.xml

    Ich weis nicht mehr weiter, habe schon 4 PHT Clients auf verschiedenen Systemen ausprobiert, bei allen das selbe :-(

    Das merkwürdige ist nur, wenn ich es so mache :

    PHP-Code:
    $ant=@Sys_GetURLContent('http://192.168.0.3:3005/jsonrpc?request={"jsonrpc":"2.0","method":"Player.GetProperties","params":{"properties":["speed"],"playerid":1},"id":1}'); 
    Klappt es ! Aber warum will das nicht über den C.S. gehen ?
    Geändert von drapple (08.11.15 um 10:13 Uhr)
    HomeMatic, Raspberry PI 2, PI-Beacon, Poskey 56, Apple, iPhone 6, Dampfen ;-) Plex, Rasplex, IP-Cams, iPad.....

  6. #6
    Registriert seit
    Jan 2015
    Ort
    Baden-Württemberg
    Beiträge
    255

    Ich stelle das gerade mal bei mir nach mit nem Plex Client auf dem Desktop Rechner, moment.

  7. #7
    Registriert seit
    Jan 2015
    Ort
    Baden-Württemberg
    Beiträge
    255

    Habe dein Problem gefunden!
    Verbinde dich mal nicht auf Port 3005, sondern auf Port 9090.

  8. #8
    Registriert seit
    Jun 2013
    Beiträge
    137

    Hallo, sowohl Port 9090 als auch der andere genannte sind mittlerweile nicht mehr erreichbar.
    Hat hier jemand eine Info zu? Ich nutze die Aktuellste PMS Version auf Windows.

  9. #9
    Registriert seit
    Feb 2011
    Ort
    Darmstadt 64297
    Beiträge
    1,716

    HomeMatic, Raspberry PI 2, PI-Beacon, Poskey 56, Apple, iPhone 6, Dampfen ;-) Plex, Rasplex, IP-Cams, iPad.....

Ähnliche Themen

  1. JSON Befehl absenden ? Plex Benachrichtigungen
    Von drapple im Forum Skripte, PHP, SQL
    Antworten: 2
    Letzter Beitrag: 03.04.15, 13:09
  2. Plex steuern per HTML/PHP , brauche Hilfe :-)
    Von drapple im Forum Skripte, PHP, SQL
    Antworten: 1
    Letzter Beitrag: 01.01.13, 22:22
  3. TTS Einstellungen...Pause etc.?
    Von dreamy1 im Forum Audio & Video, TK-Anlagen, ISDN
    Antworten: 3
    Letzter Beitrag: 12.12.09, 20:42
  4. Pause zwischen Aktionen
    Von MrTacker im Forum HomeMatic
    Antworten: 1
    Letzter Beitrag: 05.09.09, 16:51
  5. Pause im Script einbauen
    Von philipp im Forum Allgemeine Diskussion
    Antworten: 14
    Letzter Beitrag: 25.01.07, 14:47

Stichworte