From dc7e39b7b4451daa631134df15c46e983475396e Mon Sep 17 00:00:00 2001 From: Ronald Schaten Date: Mon, 15 Mar 2021 21:02:42 +0100 Subject: [PATCH] get feature information --- addon.py | 22 ++++++++++++++++++---- 1 file changed, 18 insertions(+), 4 deletions(-) diff --git a/addon.py b/addon.py index 1f54496..6665c55 100644 --- a/addon.py +++ b/addon.py @@ -42,7 +42,7 @@ def trailers_from_net(count, genre, rating): files.append("TODO: find trailer %d" % i) return files -def conduct_program(program_file): +def conduct_program(program_file, feature): filehandle = xbmcvfs.File(program_file) program_json = filehandle.read() filehandle.close() @@ -64,20 +64,34 @@ def conduct_program(program_file): entry = {'type': 'video', 'data': location} program.append(entry) elif settings['source'] == 'feature': - entry = {'type': 'video', 'data': ("TODO: find feature %d" % dbid)} + entry = {'type': 'video', 'data': feature['file']} program.append(entry) return program +def get_feature(movieid): + query = '{"jsonrpc": "2.0", "method": "VideoLibrary.GetMovieDetails", "params": {"movieid": %s, "properties": ["file", "mpaa", "genre"]}, "id": "1"}' % movieid + json_response = xbmc.executeJSONRPC(query) + response = json.loads(json_response) + feature = { + 'label': response['result']['moviedetails']['label'], + 'file': response['result']['moviedetails']['file'], + 'mpaa': response['result']['moviedetails']['mpaa'], + 'genre': response['result']['moviedetails']['genre'] + } + return feature + if __name__ == '__main__': for arg in sys.argv[1:]: (name, value) = arg.split('=') if name == 'dbid': - dbid = int(value) + movieid = int(value) cinematic_path = ADDON.getSettingString('cinematic_path') + feature = get_feature(movieid) + print(feature) programs = list_programs(cinematic_path) program_file = cinematic_path + show_dialog(programs) - program = conduct_program(program_file) + program = conduct_program(program_file, feature) print('=== playlist') for entry in program: