From b2c9a29d1e0d9c0242a01f2e574292b7591dea8d Mon Sep 17 00:00:00 2001 From: Michael Shepanski Date: Sun, 30 Aug 2015 20:59:25 -0400 Subject: [PATCH] Update timeline() to use server.query to include proper headers and timeout --- plexapi/client.py | 4 +--- plexapi/server.py | 4 ++-- 2 files changed, 3 insertions(+), 5 deletions(-) diff --git a/plexapi/client.py b/plexapi/client.py index e813d20a..ad4f1361 100644 --- a/plexapi/client.py +++ b/plexapi/client.py @@ -93,10 +93,8 @@ class Client(object): }) def timeline(self): - url = self.url('timeline/poll') params = {'wait':1, 'commandID':4} - xml_text = requests.get(url, params=params, headers=BASE_HEADERS).text - return ElementTree.fromstring(xml_text) + return self.server.query('timeline/poll', params=params) def isPlayingMedia(self): timeline = self.timeline() diff --git a/plexapi/server.py b/plexapi/server.py index bdf4ee99..430f3bbe 100644 --- a/plexapi/server.py +++ b/plexapi/server.py @@ -74,12 +74,12 @@ class PlexServer(object): headers['X-Plex-Token'] = self.token return headers - def query(self, path, method=requests.get): + def query(self, path, method=requests.get, **kwargs): global TOTAL_QUERIES TOTAL_QUERIES += 1 url = self.url(path) log.info('%s %s', method.__name__.upper(), url) - response = method(url, headers=self.headers(), timeout=TIMEOUT) + response = method(url, headers=self.headers(), timeout=TIMEOUT, **kwargs) if response.status_code not in [200, 201]: codename = codes.get(response.status_code)[0] raise BadRequest('(%s) %s' % (response.status_code, codename))