![]() |
|
JSON-RPC (JSON Remote Procedure Call) interface protocol in development for XBMC - Printable Version +- XBMC Community Forum (http://forum.xbmc.org) +-- Forum: Development (/forumdisplay.php?fid=32) +--- Forum: Development (/forumdisplay.php?fid=93) +---- Forum: JSON-RPC (/forumdisplay.php?fid=174) +---- Thread: JSON-RPC (JSON Remote Procedure Call) interface protocol in development for XBMC (/showthread.php?tid=68263) Pages: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 |
JSON-RPC (JSON Remote Procedure Call) interface protocol in development for XBMC - topfs2 - 2010-01-23 20:51 Hi, I just wanted to inform those that develop supplimental tools and client that there will be a new integration option into xbmc soon. The main benefits with the new wrapper will be:
The method structure will use the following schema "Namespace.Method" so a namespace will be logically names and the method applicable to that namespace alone. examples:
Anyways I just wanted to bring the client creators up to speed on this as its starting to get somewhat finished, and before its final I would like to get some input about what you guys would like to use it to and whats missing. So we can get as good final product as possible. Here is the currently mapped methods, there are still alot of info getters left and I'll add them as soon as I fix some other parts of the xbmc code needed. The first column says methodcall, the second is internal the third states transport specific need. the forth client permission need and finally the fifth is a description about the method. Cheers, Tobias - slash - 2010-01-28 15:07 Hi, This is a nice initiative. As a tool developer (XBMX Web Media Manager) here are some suggestions : For the movie database: - get actor, movieactors and tvshowactors - get genres General: - getshares to return also the usb disks (now it doesn't) - get the thumbs and fanart name for a specific file (so client doesn't have to calculate the CRCs) - Do you think it would be possible to do a selective get (exple: getmovies where value = something) ? Thanks - topfs2 - 2010-01-28 15:26 Yeah the get shares should really list usb disks, have forgotten to add that. will see if I can add that. Get Actors and get genres are good ideas, will add it. Also the introspect doesn't really show the params, might be worth adding though. The getmovies takes param, so you can do MovieLibrary.GetMovies were genreid = X. Same with songs, MusicLibrary.GetSongs(artistid=Y) When you get stuff it will always return thumbnail if it exists, fanart I haven't added, shall see if I can add it. Thanks for the suggestions. Cheers, Tobias - slash - 2010-01-28 15:33 Great, Looking forward to test this. Thanks for your work and efforts. Cheers Nick - CrashX - 2010-01-28 23:14 Would be nice to see a way to access/set the following via web interface: 1) Keymaps 2) AdvancedSettings - topfs2 - 2010-01-28 23:16 Advanced settings is planned, will probably have to wait until version 2 though since it needs some alterations in advancedsettings handling. Keymaps, I'd rather alter how input works and make a context driven input system and add mapping in gui (like games). - CrashX - 2010-01-28 23:23 Awesome news. How about some more video options: 1) Zoom 2) Info Wouldn't it be better to send a keypress to the gui via web interface instead adding commands one at a time ? or better yet send the Keypress Actions themselves ? That way you have to access all XBMC commands. - topfs2 - 2010-01-28 23:34 CrashX Wrote:Awesome news. Well a key can be mapped, an action cannot. they serve different functions. Allthough I've thought of adding Key sending aswell so that it could work as eventserver aswell, but I need to alter stuff inside xbmc first. And making all actions one at a time is tiresome but it adds security, since each action has its own security, so you can't call system.powerdown but call musicplayer.play from your iPhone if this is how you want it. EDIT: Info and zoom I'll add, didn't think of them, thx - CrashX - 2010-01-28 23:40 topfs2 Wrote:And making all actions one at a time is tiresome but it adds security, since each action has its own security, so you can't call system.powerdown but call musicplayer.play from your iPhone if this is how you want it. True but we do have web authenication right ? What is differences in executing the action by pressing a key vs over the web ? Another way is to maintain list of Admin only commands ( should be very short list ) ... ie system.powerdown and then have a gui settting that says allow admin command via web. - topfs2 - 2010-01-29 01:32 Pressing a key gets translated into an action depending on the window your currently in, so space can mean multiple things. An action is _always_ the same, no matter what the context or window it is. Yes, we have web authentication but if you have authenticated a script that is said to download subtitles, how do you know it won't delete all your files, delete your library and shutdown your system? I'd say that for the web it makes less sense since you probably know the client, but since were aiming at perhaps add this for script aswell its much less transparent what will happen when you start it. Check android, it has the same security model. http://developer.android.com/guide/topics/security/security.html This means that when you start an app or client we can pop up a dialog stating that this script asks for permission to alter your library, if it tries to do anything else it will be denied. |