HTTP_API Fast Forward Speed

Been working on a simple local site that uses the plex http api to do simple things like play/pause, stop, browse menus, etc. so I can control plex from my laptop while hanging out on the couch.

 

I've been able to tie into the fast forward and rewind commands:

 

/system/players/192.168.0.x/playback/fastForward

 

But it appears as though it'll only scrub at 2x regardless of how many times that URL is hit.  Is there a way to configure that speed with just the HTTP API?

 

Thanks in advance!

I've been trying the same thing, but had no luck.

I used the examples from the HTTP API docs on the wiki.

for example:

http://192.168.1.30:32400/clients

Returns:

<MediaContainer size="1">
<Server name="mini" host="192.168.1.30" address="192.168.1.30" port="3000" machineIdentifier="206fecc0-7f5d-4874-a3b9-4f225ae76a0c" version="0.9.5.4-f067f15"/>
 
All well and good.
 
But the other examples, such as: 
 
http://192.168.1.30:32400/system/players/mini/playback/OSD
 
Returns:
 
<Response code="2000" status="TypeError: 'NoneType' object is not callable">
Traceback (most recent call last): File "/Volumes/2TB2/Plex DB/Plug-ins/Framework.bundle/Contents/Resources/Versions/2/Python/Framework/components/runtime.py", line 837, in handle_request result = f(**d) File "/Users/mini/Library/Application Support/Plex Media Server/Plug-ins/System.bundle/Contents/Code/playerservice.py", line 29, in process_remote_command result = cmd(**kwargs) File "/Volumes/2TB2/Plex DB/Plug-ins/Framework.bundle/Contents/Resources/Versions/2/Python/Framework/code/sandbox.py", line 18, in _apply return apply(f, args, kwargs) TypeError: 'NoneType' object is not callable
 
And:
 
http://192.168.1.30:32400/system/players/mini/playback/pause
 
returns:
 
<Response code="2000" status="TypeError: 'NoneType' object is not callable">
Traceback (most recent call last): File "/Volumes/2TB2/Plex DB/Plug-ins/Framework.bundle/Contents/Resources/Versions/2/Python/Framework/components/runtime.py", line 837, in handle_request result = f(**d) File "/Users/mini/Library/Application Support/Plex Media Server/Plug-ins/System.bundle/Contents/Code/playerservice.py", line 29, in process_remote_command result = cmd(**kwargs) File "/Volumes/2TB2/Plex DB/Plug-ins/Framework.bundle/Contents/Resources/Versions/2/Python/Framework/code/sandbox.py", line 18, in _apply return apply(f, args, kwargs) TypeError: 'NoneType' object is not callable
 
Have I missed something, or am I doing something wrong?

Hrm, I think the reason the fast foward stuff isn't working for me might be due to the fact that I'm on PMS for Linux, or that they've phased out those particular commands.  For what it's worth, I've found that I have to call the specific IP address of the client, not the friendly name:

http://IPADDR:32400/system/players/192.168.0.XXX/playback/play

Where IPADDR is my server's IP address, and the XXX represents the value of the local IP address.  Play / pause will toggle each time you call the /playback/play url.  I haven't gotten the OSD to work either, but I did get the context menu to come up:

/navigation/contextMenu

Good luck!

Perfect! THanks for that - it worked straight away when I installed IP address instead of DNS name.

Thanks

Been working on a simple local site that uses the plex http api to do simple things like play/pause, stop, browse menus, etc. so I can control plex from my laptop while hanging out on the couch.

I've been able to tie into the fast forward and rewind commands:

/system/players/192.168.0.x/playback/fastForward

But it appears as though it'll only scrub at 2x regardless of how many times that URL is hit.  Is there a way to configure that speed with just the HTTP API?

Thanks in advance!

Did you manage to get this working? I have the same problem. Many thanks.

Did you manage to get this working? I have the same problem. Many thanks.

I still haven't been able to get the fastFoward call to work.  My workaround is to bring up the OSD:

http://IPADDR:32400/system/players/IPADDR/navigation/toggleOSD

Then also tie in to the left / right controls:

http://IPADDR:32400/system/players/IPADDR/navigation/moveRight

To highlight the fast forward icon (on screen) then use that.  Hitting it each time will increase the scrub speed.

Basically I've tied all of these commands to a script that monitors keystrokes...It'll need to updated for your particular install, but feel free to use it if you'd like.  I'm using jQuery:

	function plexGestures(){
		if(plexfocus == "true"){
		$("body").bind().keydown(function(e){
			e.preventDefault();
		// alert(e.keyCode);	
		// 8 = back
		// 13 = enter
		// 37 = left
		// 38 = up
		// 39 = right
		// 40 = down		
		// 70 = "f" (toggle ff or rewind speed)
		// 73 = "i" (for info)
		// 79 = "o" (onscreen menu)
		// 82 = "r" (reboot plex)

		if(e.keyCode == "8" || e.keyCode == "27"){
			$.get("http://IPADDR:32400/system/players/IP.AD.DR.ESS/navigation/back", function() {})
			}
		else if(e.keyCode == "13"){
			$.get("http://IPADDR:32400/system/players/IP.AD.DR.ESS/navigation/select", function() {})
			}
		else if(e.keyCode == "32"){
			$.get("http://IPADDR:32400/system/players/IP.AD.DR.ESS/playback/play", function() {})
			}
		else if(e.keyCode == "37"){
			$.get("http://IPADDR:32400/system/players/IP.AD.DR.ESS/navigation/moveLeft", function() {})
			}
		else if(e.keyCode == "38"){
			$.get("http://IPADDR:32400/system/players/IP.AD.DR.ESS/navigation/moveUp", function() {})
			}
		else if(e.keyCode == "39"){
			$.get("http://IPADDR:32400/system/players/IP.AD.DR.ESS/navigation/moveRight", function() {})
			}
		else if(e.keyCode == "40"){
			$.get("http://IPADDR:32400/system/players/IP.AD.DR.ESS/navigation/moveDown", function() {})
			}
		else if(e.keyCode == "73"){
			$.get("http://IPADDR:32400/system/players/IP.AD.DR.ESS/navigation/contextMenu", function() {})
			}
		else if (e.keyCode == "70"){
			$.get("http://IPADDR:32400/system/players/IP.AD.DR.ESS/playback/bigStepForward", function() {})
			}
		else if (e.keyCode == "79"){
			$.get("http://media.stephenpontes.com:32400/system/players/IP.AD.DR.ESS/navigation/toggleOSD", function() {})
			}
		else if (e.keyCode == "82"){
			// shell fire restart plex
			}
		}); //end key function
	}
	else {
		$("body").unbind();
	};
}

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.