topfs2 Wrote:httpapi is still there, it is not removed yet.
Please post a log and a testcase were it fails.
Thank you so much for listening and for the help. Ok to the point:
User case:
Home Automation system
Control4 has a album art media interface to certain media centers. XBMC being the one that prob a good 80% of users use. There was a two way HTTP API driver released by a member of Control4 (the driver is written in LUA). I have the driver and code for the driver (if you want to interrogate the driver to help trouble shoot this).
Basically what the driver does is it sends the Play, Pause, Stop commands using the following HTTP API commands
http://pastebin.com/ChFw4Dtb
Extract of commands for the purpose of this post
Quote:Play = "GET /xbmcCmds/xbmcHttp?command=ExecBuiltIn¶meter=XBMC.Action(Play)",
Info = "GET /xbmcCmds/xbmcHttp?command=ExecBuiltIn¶meter=XBMC.Action(Info)",
Pause = "GET /xbmcCmds/xbmcHttp?command=ExecBuiltIn¶meter=XBMC.Action(Pause)",
Stop = "GET /xbmcCmds/xbmcHttp?command=ExecBuiltIn¶meter=XBMC.Action(Stop)",
Skip_Next = "GET /xbmcCmds/xbmcHttp?command=ExecBuiltIn¶meter=XBMC.Action(SkipNext)",
Skip_Previous = "GET /xbmcCmds/xbmcHttp?command=ExecBuiltIn¶meter=XBMC.Action(SkipPrevious)",
So looking above basically what they do in the driver is declare a parameter for example
Quote: "Play"
and assign a HTTP API command to it I.e.
Quote:"GET /xbmcCmds/xbmcHttp?command=ExecBuiltIn¶meter=XBMC.Action(Play)",
In the case of media files that are located on SMB shares on the network and not in the XBMC library they have the following function:
Quote:if (strCommand == "PLAY_THIS_FILE") then
playURL("smb:" .. tParams["FILE"])
end
In my use case this is what is not working on the current builds along with any of the commands i.e. Play, Stop, Pause.
The only command that works (for some odd reason) is MENU ..... but MENU is declared and send via the same method to the XBMC HTTP API as the other commands i.e.
Quote:Context_Menu = "GET /xbmcCmds/xbmcHttp?command=ExecBuiltIn¶meter=XBMC.Action(ContextMenu)",
Or
Previous_Menu = "GET /xbmcCmds/xbmcHttp?command=ExecBuiltIn¶meter=XBMC.Action(Previous_Menu)",
Or
Show_Video_Menu = "GET /xbmcCmds/xbmcHttp?command=ExecBuiltIn¶meter=XBMC.Action(ShowVideoMenu)",
I have a full log of the system here - link on pastebin - I don't specifically see anything HTTP API related there so if there are any further debugs or parameters I need to enable to get a more verbose log for you please let me know I will do so immediately.
The log contains the following (from a use case):
I deleted the XBMC.log file (So we would have a clean log).
1. Started XBMC - wait 10 seconds to make sure everything is up and running nicely
2. From the interface (that makes use of the driver (that sends the commands specified above). Tried the following commands:
2.1 Play Movie at network location: \\crone\Movies - Complete\_BLU RAY 1080P\Madagascar 2 Escape To Africa.2008.BDRip.1080P\Madagascar 2 Escape To Africa.2008.BDRip.1080P.mkv - Movie did not start at all
2.2 Started this same movie from the same location on the SMB share then used the interface to try Play, Pause, STOP - with no luck
I want to note that on builds 9.11 (Stable build) and roughly to nightly builds 28xx *where xx = any version in that trunk* this works, I can use step 2.1 to play the movie and it starts and I have full control of the movie from the Control4 interface to, so either the HTTP API commands changed or something is different here.
Again I just want to thank you for taking the time to look at this and helping this Control4 community out here!!!! It would be much much appreciated.