Kodi Community Forum
JSON-RPC (JSON Remote Procedure Call) interface protocol in development for XBMC - Printable Version

+- Kodi Community Forum (https://forum.kodi.tv)
+-- Forum: Development (https://forum.kodi.tv/forumdisplay.php?fid=32)
+--- Forum: Kodi Application (https://forum.kodi.tv/forumdisplay.php?fid=93)
+---- Forum: JSON-RPC (https://forum.kodi.tv/forumdisplay.php?fid=174)
+---- Thread: JSON-RPC (JSON Remote Procedure Call) interface protocol in development for XBMC (/showthread.php?tid=68263)



RE: JSON-RPC (JSON Remote Procedure Call) interface protocol in development for XBMC - Milhouse - 2014-09-25

Post deleted... why'd I only think of reading the source code after posting? Smile You can specify the level on the GetSettings call...


RE: JSON-RPC (JSON Remote Procedure Call) interface protocol in development for XBMC - Montellese - 2014-09-25

I'm on vacation so I can't verify but GetSettings should have an optional "level" parameter which defaults to "standard" and is completely decoupled from the level you defined in the GUI. GetSettingValue and SetSettingValue are also completely decoupled from the setting level defined in the GUI. That level is only meant to make it easier for average joe users to configue XBMC. It's not a threshold disallowing any access to the more adcanced settings.

In the end you should be able to (more or less) reproduce the whole settings gui in a JSON-RPC client completely independent of the setting level chosen in XBMC.


RE: JSON-RPC (JSON Remote Procedure Call) interface protocol in development for XBMC - Milhouse - 2014-09-25

Yes it does, and it's working - adding "params": {"level": "expert"} returns all the settings. Many thanks for responding and I hope you're enjoying your vacation! Smile


RE: JSON-RPC (JSON Remote Procedure Call) interface protocol in development for XBMC - Milhouse - 2014-09-26

I have found one small issue when calling GetSettings as follows, although it's not specifically a JSON problem:
Code:
{"jsonrpc": "2.0", "method": "Settings.GetSettings", "params": {"level": "expert"}, "id": "1"}

the following four errors are logged to xbmc.log:
Code:
08:34:16 34349.148438 T:2813326416   ERROR: GetDirectory - Error getting /storage/.xbmc/media/Fonts/
08:34:16 34349.148438 T:2813326416   ERROR: GetDirectory - Error getting special://home/media/Fonts/
08:34:16 34349.312500 T:2813326416   ERROR: GetDirectory - Error getting /storage/.xbmc/media/Fonts/
08:34:16 34349.312500 T:2813326416   ERROR: GetDirectory - Error getting special://home/media/Fonts/

This is with stock Confluence skin, in case it matters (probably doesn't)

I don't have a /storage/.xbmc/media/Fonts folder (I do have /storage/.xbmc/media).

Chatting on #xbmc, it seems to be normal for the Fonts folder to be missing, so perhaps these messages should be logged as debug, not errors.

I see the same 4 errors when I use the GUI to enter the Settings -> Videos -> Subtitles page. I'm using default settings on the Subtitles page.


RE: JSON-RPC (JSON Remote Procedure Call) interface protocol in development for XBMC - Montellese - 2014-09-27

Yeah these errors have been in the logs for ages even before the settings refactor but back then there was no JSON-RPC interface available for settings.


RE: JSON-RPC (JSON Remote Procedure Call) interface protocol in development for XBMC - Montellese - 2014-10-02

(2014-09-19, 12:33)Tolriq Wrote: @Montellese : Got an interesting report today and can't really understand how it's handled at XBMC level Sad

Some users have albums as flac + cue file.

All is correctly handled in XBMC when playing songid, but when querying song details for local play or streaming it seems there's no way to get the cue information and so every songs only reports the full flac file (same for all) but without details on how to handle them.

Is this something that can be addressed ? Like a a new field or perhaps there's some bookmarks for that purpose that can be queried ?

Sorry for the late reply.

Unfortunately I have no idea what a cue file is or how it works (I rarely use XBMC to listen to music).


RE: JSON-RPC (JSON Remote Procedure Call) interface protocol in development for XBMC - Tolriq - 2014-10-02

No problem Sad

http://wiki.xbmc.org/?title=Cue_sheets for cue sheets, they are just index of how a to cut a big file in multiple songs.
Do you know where I could look into the code or who I could ask ?

Since I got more and more report, so I suppose now "scene" release are more of the flac + cue type Sad


RE: JSON-RPC (JSON Remote Procedure Call) interface protocol in development for XBMC - Montellese - 2014-10-04

(2014-08-11, 09:55)Milhouse Wrote: I'm running the following query:

Code:
{"jsonrpc": "2.0", "params": {"limits": {"start": 0, "end": 1}}, "method": "VideoLibrary.GetTVShows", "id": "libStats"}

which returns an incorrect result for recent Helix builds.

This is what Gotham (OpenELEC 4.0.7 with MySQL) and Helix (commit bb3554c) returns:

Gotham/Helix:
Code:
{"id":"libStats","jsonrpc":"2.0","result":{"limits":{"end":1,"start":0,"total":61},"tvshows":[{"label":"Arrested Development","tvshowid":115}]}}

Helix from 6 July onwards:
Code:
{"id":"libStats","jsonrpc":"2.0","result":{"limits":{"end":1,"start":0,"total":1},"tvshows":[{"label":"Arrested Development","tvshowid":115}]}}

The total should be 61 in both cases, but is always 1 for builds on/after 6 July.

I've gone back through my old builds and this problem first appears with this build on 6 July. The commit changes for the build are listed in the link, the most obvious candidate is likely to be the PR4977 commit (Tvshow multipaths parentid). I'm testing with MySQL.

Could you give PR5451 a try and let me know if it works again? Works fine again for me.


RE: JSON-RPC (JSON Remote Procedure Call) interface protocol in development for XBMC - Montellese - 2014-10-05

(2014-09-02, 14:41)Samtronic Wrote: Hi !
I have a problem with the command 'Profiles.LoadProfile'. I setup a password for the master profil. My second profil is 'Children' with no password. When I put a password for the master profile when I want to change the profil to Children
'{"jsonrpc":"2.0","method":"Profiles.LoadProfile","params":{"profile":"Children"},"id":1}. I have a this message '{"error":{"code":-32602,"message":"Invalid params."},"id":1,"jsonrpc":"2.0"}'. If I remove the master password the command is ok. Why when I put a password for the master profil, I have a problem to change the Children profil.

Sorry for my bad english !Big Grin

Thanks
Steven

Finally had time to look into this. Login with passwords was broken as well (but also in the GUI). PR5456 should take care of this.


RE: JSON-RPC (JSON Remote Procedure Call) interface protocol in development for XBMC - Regss - 2014-10-10

It is a way to get actors id?


RE: JSON-RPC (JSON Remote Procedure Call) interface protocol in development for XBMC - edrikk - 2014-10-17

Hi,
Sending this from work, so please excuse the poor "report". I will provide additional details if this is not sufficient.

I am calling GUI.ShowNotification in Kodi nightly from Monday (will upgrade tomorrow to latest nightly). This is running on Windows 8.1, 64Bit, with all updates up to yesterday installed. XBMC running against a MySQL backend housed on the same server, and connected to an AV Reciever (and in turn to TV) via HDMI.

XBMC was upgraded to Kodi from last stable Gotham, and the profiles were migrated to "Kodi" within the %userdata% path of Windows automatically after the first migration.


When calling GUI.ShowNotification, the notification is shown correctly (i.e. title and message), however, for some reason I'm noticing two issues:
1) [ mixed image = "" ] <-- When I don't provide the value for the image, Kodi seems to display an image anyways. The image is of another Show that I have, so I'm not sure if it's picking up a cached image in this case or not, but weird. When supplying the parameter, the correct image is always displayed.

2) [ integer displaytime = 5000 ] <--- For some reason this value doesn't seem to have an impact for me... I set it to 30000 and it still seems to last about 5 seconds.


Does anyone else see this behavior? If so, I'll create a ticket. If not, I'll review my code again/post the simplest one here...


RE: JSON-RPC (JSON Remote Procedure Call) interface protocol in development for XBMC - Milhouse - 2014-10-17

(2014-10-17, 21:31)edrikk Wrote: Does anyone else see this behavior? If so, I'll create a ticket. If not, I'll review my code again/post the simplest one here...

I guess we'll need to see your JSON payload once you get home.

The following is working for me (current Helix master, OpenELEC, Raspberry Pi):
Code:
{"jsonrpc": "2.0", "params": {"message": "yourmessage", "displaytime": 5000, "title": "yourtitle"}, "method": "GUI.ShowNotification", "id": "libNotification"}

This is what I see:

[attachment=328]

To test it, you could try the script in my sig: "texturecache.py notify yourtitle yourmessage 5000"


RE: JSON-RPC (JSON Remote Procedure Call) interface protocol in development for XBMC - Montellese - 2014-10-17

(2014-10-17, 21:31)edrikk Wrote: 1) [ mixed image = "" ] <-- When I don't provide the value for the image, Kodi seems to display an image anyways. The image is of another Show that I have, so I'm not sure if it's picking up a cached image in this case or not, but weird. When supplying the parameter, the correct image is always displayed.
Yeah no image is not really supported. It will just grab the last used image and show it again (which is kinda stupid but I don't really know that code very well).

(2014-10-17, 21:31)edrikk Wrote: 2) [ integer displaytime = 5000 ] <--- For some reason this value doesn't seem to have an impact for me... I set it to 30000 and it still seems to last about 5 seconds.
Hm that sounds wrong. I know that there's a minimum value of 1000 but I don't think that there's an upper limit. I'll have to try it myself.


RE: JSON-RPC (JSON Remote Procedure Call) interface protocol in development for XBMC - Milhouse - 2014-10-17

I tried 2000 and 5000, both showed the notification for the expected amount of time.


RE: JSON-RPC (JSON Remote Procedure Call) interface protocol in development for XBMC - Montellese - 2014-10-17

(2014-10-17, 23:26)Milhouse Wrote: I tried 2000 and 5000, both showed the notification for the expected amount of time.

Yup you're right. Just tested this myself with 20000 and the notification was there for 20 seconds.