diff options
-rw-r--r-- | pandora/errors.py | 2 | ||||
-rw-r--r-- | pandora/models/_base.py | 6 | ||||
-rw-r--r-- | pandora/models/ad.py | 15 | ||||
-rw-r--r-- | pandora/models/playlist.py | 12 | ||||
-rw-r--r-- | pydora/audio_backend.py | 6 |
5 files changed, 31 insertions, 10 deletions
diff --git a/pandora/errors.py b/pandora/errors.py index b09e813..ba377b5 100644 --- a/pandora/errors.py +++ b/pandora/errors.py | |||
@@ -56,7 +56,7 @@ class PandoraException(Exception): | |||
56 | 56 | ||
57 | def __init__(self, extended_message=""): | 57 | def __init__(self, extended_message=""): |
58 | self.extended_message = extended_message | 58 | self.extended_message = extended_message |
59 | super(Exception, self).__init__(self.message) | 59 | super(PandoraException, self).__init__(self.message) |
60 | 60 | ||
61 | @classmethod | 61 | @classmethod |
62 | def from_code(cls, code, extended_message): | 62 | def from_code(cls, code, extended_message): |
diff --git a/pandora/models/_base.py b/pandora/models/_base.py index 34ee2f7..214f3c1 100644 --- a/pandora/models/_base.py +++ b/pandora/models/_base.py | |||
@@ -63,11 +63,11 @@ class DateField(SyntheticField): | |||
63 | nanosecond precision. | 63 | nanosecond precision. |
64 | """ | 64 | """ |
65 | 65 | ||
66 | def formatter(self, api_client, data, value): | 66 | def formatter(self, api_client, data, newval): |
67 | if not value: | 67 | if not newval: |
68 | return None | 68 | return None |
69 | 69 | ||
70 | return datetime.utcfromtimestamp(value["time"] / 1000) | 70 | return datetime.utcfromtimestamp(newval["time"] / 1000) |
71 | 71 | ||
72 | 72 | ||
73 | class ModelMetaClass(type): | 73 | class ModelMetaClass(type): |
diff --git a/pandora/models/ad.py b/pandora/models/ad.py index d5bcd89..91820c9 100644 --- a/pandora/models/ad.py +++ b/pandora/models/ad.py | |||
@@ -34,3 +34,18 @@ class AdItem(PlaylistModel): | |||
34 | if self.tracking_tokens: | 34 | if self.tracking_tokens: |
35 | raise exc | 35 | raise exc |
36 | return super(AdItem, self).prepare_playback() | 36 | return super(AdItem, self).prepare_playback() |
37 | |||
38 | def thumbs_up(self): # pragma: no cover | ||
39 | return | ||
40 | |||
41 | def thumbs_down(self): # pragma: no cover | ||
42 | return | ||
43 | |||
44 | def bookmark_song(self): # pragma: no cover | ||
45 | return | ||
46 | |||
47 | def bookmark_artist(self): # pragma: no cover | ||
48 | return | ||
49 | |||
50 | def sleep(self): # pragma: no cover | ||
51 | return | ||
diff --git a/pandora/models/playlist.py b/pandora/models/playlist.py index 08510f1..bd135db 100644 --- a/pandora/models/playlist.py +++ b/pandora/models/playlist.py | |||
@@ -36,7 +36,7 @@ class PandoraType(Enum): | |||
36 | 36 | ||
37 | class AudioField(SyntheticField): | 37 | class AudioField(SyntheticField): |
38 | 38 | ||
39 | def formatter(self, api_client, data, value): | 39 | def formatter(self, api_client, data, newval): |
40 | """Get audio-related fields | 40 | """Get audio-related fields |
41 | 41 | ||
42 | Try to find fields for the audio url for specified preferred quality | 42 | Try to find fields for the audio url for specified preferred quality |
@@ -85,21 +85,21 @@ class AudioField(SyntheticField): | |||
85 | 85 | ||
86 | class AdditionalUrlField(SyntheticField): | 86 | class AdditionalUrlField(SyntheticField): |
87 | 87 | ||
88 | def formatter(self, api_client, data, value): | 88 | def formatter(self, api_client, data, newval): |
89 | """Parse additional url fields and map them to inputs | 89 | """Parse additional url fields and map them to inputs |
90 | 90 | ||
91 | Attempt to create a dictionary with keys being user input, and | 91 | Attempt to create a dictionary with keys being user input, and |
92 | response being the returned URL | 92 | response being the returned URL |
93 | """ | 93 | """ |
94 | if value is None: | 94 | if newval is None: |
95 | return None | 95 | return None |
96 | 96 | ||
97 | user_param = data['_paramAdditionalUrls'] | 97 | user_param = data['_paramAdditionalUrls'] |
98 | urls = {} | 98 | urls = {} |
99 | if isinstance(value, str): | 99 | if isinstance(newval, str): |
100 | urls[user_param[0]] = value | 100 | urls[user_param[0]] = newval |
101 | else: | 101 | else: |
102 | for key, url in zip(user_param, value): | 102 | for key, url in zip(user_param, newval): |
103 | urls[key] = url | 103 | urls[key] = url |
104 | return urls | 104 | return urls |
105 | 105 | ||
diff --git a/pydora/audio_backend.py b/pydora/audio_backend.py index 949301e..d39bb9b 100644 --- a/pydora/audio_backend.py +++ b/pydora/audio_backend.py | |||
@@ -232,6 +232,12 @@ class MPG123Player(BasePlayer): | |||
232 | def _player_stopped(self, value): | 232 | def _player_stopped(self, value): |
233 | return value.startswith(b"@P") and value.decode("utf-8")[3] == "0" | 233 | return value.startswith(b"@P") and value.decode("utf-8")[3] == "0" |
234 | 234 | ||
235 | def raise_volume(self): | ||
236 | return | ||
237 | |||
238 | def lower_volume(self): | ||
239 | return | ||
240 | |||
235 | 241 | ||
236 | class VLCPlayer(BasePlayer): | 242 | class VLCPlayer(BasePlayer): |
237 | 243 | ||