From c6736ba1bbf3f079dee795cffbc8cb0d988e9ab7 Mon Sep 17 00:00:00 2001 From: blacktwin Date: Thu, 17 Aug 2017 07:37:07 -0400 Subject: [PATCH] /status/sessions endpoint update https://forums.plex.tv/discussion/comment/1497543/#Comment_1497543 (Serialization) /status/sessions endpoint for playbacks with multiple Media elements wasn't serialized to JSON correctly (#7344) --- killstream/create_wait_kill_trans.py | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/killstream/create_wait_kill_trans.py b/killstream/create_wait_kill_trans.py index b23366b..6597efa 100644 --- a/killstream/create_wait_kill_trans.py +++ b/killstream/create_wait_kill_trans.py @@ -104,13 +104,14 @@ def kill_stream(sessionId, message, xtime, ntime, user, title, sessionKey): def find_sessionID(response): sessions = [] - for s in response['MediaContainer']['Video']: - if s['sessionKey'] == sys.argv[1] and s['Player']['state'] == 'paused' and s['Media']['Part']['decision'] == 'transcode': - sess_id = s['Session']['id'] - user = s['User']['title'] - sess_key = sys.argv[1] - title = (s['grandparentTitle'] + ' - ' if s['type'] == 'episode' else '') + s['title'] - title = unicodedata.normalize('NFKD', title).encode('ascii','ignore') + for video in response['MediaContainer']['Video']: + part = video['Media'][0]['Part'][0] + if video['sessionKey'] == sys.argv[1] and video['Player']['state'] == 'paused' \ + and part['decision'] == 'transcode': + sess_id = video['Session']['id'] + user = video['User']['title'] + sess_key = video['sessionKey'] + title = (video['grandparentTitle'] + ' - ' if video['type'] == 'episode' else '') + video['title'] sessions.append((sess_id, user, title, sess_key)) else: pass