JSON RPC: Important changes
#4
pre-Frodo (pre-12.0)

Sunday, March 25th 2012:
Commit: 4d4eac0b4043c99d9794
Add support for WebSockets. Websockets are accessible using the port of the TCP server (by default 9090) and using version 8 (draft) or 13 (final) of the websocket specification. So the URL to access the websocket would be e.g.
Code:
ws://localhost:9090/jsonrpc
For now websockets are only available for JSON-RPC and support the same features as the TCP Server (i.e. notifications but no file download).

Tuesday, March 27th 2012:
Commit: 32b3b77f9829202e1528
  • added Input.ContextMenu and Input.Info
  • added System.EjectOpticalDrive and a new permission ControlSystem
  • added GUI namespace with the methods ShowNotification, SetFullscreen and GetProperties (current properties are "currentwindow", "currentcontrol", "fullscreen" and "skin")
  • added AudioLibrary.GetRecentlyPlayedAlbums and AudioLibrary.GetRecentlyPlayedSongs
  • added properties "size", "lastmodified" and "mimetype" to Files.GetDirectory
  • added properties "season" and "watchedepisodes" to VideoLibrary.GetTvShows and "watchedepisodes" to VideoLibrary.GetSeasons
  • added notification Application.OnVolumeChanged
  • extended Application.SetVolume to support "increment" and "decrement"
  • added optional "play" parameter to Player.PlayPause
  • added optional "enable" parameter to Player.SetSubtitle
  • added optional "directory" parameter to (Audio|Video)Library.Scan
  • added optional "options" parameter to Player.Open which can have the properties "shuffled", "repeat" and "resume"
  • improved properties returned by Player.GetItem for non-library media being played
  • added sort methods "country", "dateadded", "listeners" and "bitrate"

Tuesday, March 27th 2012:
Commit: adff92756087a50bb116
I just pushed a major refactor of how the webserver works internally. Currently this has only one effect on how it works and that affects JSON-RPC clients using JSON-RPC over HTTP. You need to make sure you set the Content-Type in the HTTP header to "application/json" and not something like "multipart/form-data" because that is plain wrong. The new implementation has the functionality to parse POST data for certain content-types (including application/json, multipart/form-data and application/x-www-form-urlencoded) and will therefore fail if the content-type does not match the actual POST data.

Tuesday, May 1st 2012:
Commit: 5cc59fd88149927ae708
  • added "lastplayed" property for songs

Friday, May 4th 2012:
Commit: 0bd7924d87f00059a9b4
  • added SetArtistDetails, SetAlbumDetails and SetSongDetails to the AudioLibrary namespace
  • added SetMovieDetails, SetTVShowDetails. SetEpisodeDetails and SetMusicVideoDetails to the VideoLibrary namespace
  • added RemoveMovie, RemoveTVShow, RemoveEpisode and RemoveMusicVideo to the VideoLibrary namespace

Monday, May 14th 2012:
Commit: 1e16f6f66c96f70bfdb7
These commits solve the problem of retrieving thumbnails and fanart provided by JSON-RPC after introducing the new texture caching functionality in the video library. With the new cache XBMC uses image://<path-to-real-file> URLs to relate to images. Currently this only is implemented for video artwork, music artwork still uses the old special://<some-path> URLs but they should both work. We used this opportunity to introduce a new image handler in the webserver which is meant to replace the existing VFS handler someday in the near future. This means that images can and should from now on be retrieved using the following HTTP URL: http://<ip>:<port>/image/<url-encoded-image-path> where <url-encoded-image-path> can either be a image://- or a special://-based URL. It is very important that the whole image-URL provided by JSON-RPC is URL-encoded because otherwise it will result in an invalid URL and will not work. If you're not sure what the resulting URL should look like, take a image-URL returned by JSON-RPC and use Files.PrepareDownload to retrieve the actual URL you should call. For the time being you can still use the "old" VFS handler but we plan to remove it because it is a huge security risk/hole.

Sunday, July 1st 2012:
Commit: 64aea4d83de8899e2449
  • added "fanart" and "thumbnail" parameters to VideoLibrary.SetFooDetails

Wednesday, July 11th 2012:
Commit: c924204d75d511489972
  • added SendText, ExecuteAction, ShowOSD and ShowCodec to Input namespace
  • added Input.OnInputRequested and Input.OnInputFinished notifications which are sent when the virtual keyboard (or the numerics/date/time/ip) dialog is activated/deactivated.
Always read the online manual (wiki), FAQ (wiki) and search the forum before posting.
Do not e-mail Team Kodi members directly asking for support. Read/follow the forum rules (wiki).
Please read the pages on troubleshooting (wiki) and bug reporting (wiki) before reporting issues.


Messages In This Thread
JSON RPC: Important changes - by Montellese - 2011-04-05, 00:52
RE: JSON RPC: Important changes - by Montellese - 2012-03-25, 13:51
Logout Mark Read Team Forum Stats Members Help
JSON RPC: Important changes1